Thread

  1. Bug in CREATE SEQUENCE x MAXVAL x parsing?

    Metalstorm <metlstrm@ihug.co.nz> — 1999-12-01T02:39:56Z

    ============================================================================
                            POSTGRESQL BUG REPORT TEMPLATE
    ============================================================================
    
    
    Your name               :       Adam Boileau
    Your email address      :       metlstrm@ihug.co.nz
    
    
    System Configuration
    ---------------------
      Architecture (example: Intel Pentium)         :   Dual Intel P2
    
      Operating System (example: Linux 2.0.26 ELF)  :   Linux 2.2.10
    
      PostgreSQL version (example: PostgreSQL-6.5.3):   PostgreSQL-6.5.3 
    
      Compiler used (example:  gcc 2.8.0)           :   gcc 2.95.1
    
    
    Please enter a FULL description of your problem:
    ------------------------------------------------
    
    Creating a sequence whose maxvalue is > signed-4-byte-int-max generates
    a parse error.
    Inserting the same value into an int8 field works, however. 
    Conclusion: create sequence doesnt parse > int4, but insert does.
    
    
    
    Please describe a way to repeat the problem.   Please try to provide a
    concise reproducible example, if at all possible: 
    ----------------------------------------------------------------------
    
    euclid=> create table test (Im_big int8);
    CREATE
    
    --Insert int4-max + 1
    euclid=> insert into test values (2147483648);
    INSERT 192329 1
    
    --Create a sequence whose maxval is int4-max
    euclid=> create sequence im_big_seq maxvalue 2147483647;
    CREATE
    
    --Hmm, works great.
    euclid=> drop sequence im_big_seq;    
    DROP
    
    --Create a sequence whose maxval is int4-max + 1
    euclid=> create sequence im_big_seq maxvalue 2147483648;
    ERROR:  parser: parse error at or near "2147483648"
    ERROR:  parser: parse error at or near "2147483648"
    
    --No sir, I dont like it.