Re: 'begin transaction' new syntax bug?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: 'begin transaction' new syntax bug?
Дата
Msg-id 200404192120.i3JLKXH15469@candle.pha.pa.us
обсуждение исходный текст
Ответ на 'begin transaction' new syntax bug?  (Fabien COELHO <coelho@cri.ensmp.fr>)
Ответы Re: 'begin transaction' new syntax bug?  (Christopher Kings-Lynne <chriskl@familyhealth.com.au>)
Список pgsql-hackers
Fabien COELHO wrote:
> #
> # new syntax?
> #
>
> psql> BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
> BEGIN
> psql> SHOW TRANSACTION ISOLATION LEVEL;
>  transaction_isolation
> -----------------------
>  read committed

OK, fixed:

    test=> BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;
    BEGIN
    test=> SHOW TRANSACTION ISOLATION LEVEL;
     transaction_isolation
    -----------------------
     serializable
    (1 row)

I added the ability to use such clauses to BEGIN in January for 7.5, but
I never tested it using SHOW.  I thought the START TRANSACTION and BEGIN
code would handle the clause code the same, but BEGIN was ignoring it.

Patch attached and applied.

Thanks for the report.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: src/backend/tcop/utility.c
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/tcop/utility.c,v
retrieving revision 1.211
diff -c -c -r1.211 utility.c
*** src/backend/tcop/utility.c    23 Mar 2004 19:35:17 -0000    1.211
--- src/backend/tcop/utility.c    19 Apr 2004 21:16:57 -0000
***************
*** 302,316 ****

                  switch (stmt->kind)
                  {
                      case TRANS_STMT_BEGIN:
-                         BeginTransactionBlock();
-                         break;
-
-                         /*
-                          * START TRANSACTION, as defined by SQL99:
-                          * Identical to BEGIN, except that it takes a few
-                          * additional options.
-                          */
                      case TRANS_STMT_START:
                          {
                              BeginTransactionBlock();
--- 302,313 ----

                  switch (stmt->kind)
                  {
+                     /*
+                      * START TRANSACTION, as defined by SQL99:
+                      * Identical to BEGIN, except that it takes a few
+                      * additional options.  Same code for both.
+                      */
                      case TRANS_STMT_BEGIN:
                      case TRANS_STMT_START:
                          {
                              BeginTransactionBlock();
Index: src/backend/utils/misc/guc.c
===================================================================
RCS file: /cvsroot/pgsql-server/src/backend/utils/misc/guc.c,v
retrieving revision 1.199
diff -c -c -r1.199 guc.c
*** src/backend/utils/misc/guc.c    7 Apr 2004 18:52:26 -0000    1.199
--- src/backend/utils/misc/guc.c    19 Apr 2004 21:17:01 -0000
***************
*** 3394,3399 ****
--- 3394,3401 ----
  SetPGVariable(const char *name, List *args, bool is_local)
  {
      char       *argstring = flatten_set_variable_args(name, args);
+ printf("bjm:  %s %s\n", name, argstring);
+ fflush(stdout);

      /* Note SET DEFAULT (argstring == NULL) is equivalent to RESET */
      set_config_option(name,

В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Magnus Hagander"
Дата:
Сообщение: locale issues on win32 (fix?)
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: 'begin transaction' new syntax bug?