Shridhar Daithankar kirjutas K, 04.12.2002 kell 20:51:
> On 4 Dec 2002 at 20:41, Hannu Krosing wrote:
> > hannu=# update seq set max_value = 99;
> > ERROR: You can't change sequence relation seq
> > hannu=# update pg_class set relkind = 'r' where relname = 'seq';
> > UPDATE 1
> > hannu=# update seq set max_value = 99;
> > UPDATE 1
> > hannu=# update pg_class set relkind = 'S' where relname = 'seq';
> > UPDATE 1
> > hannu=# select * from seq;
> > sequence_name | last_value | increment_by | max_value | min_value |
> > cache_value | log_cnt | is_cycled | is_called
> >
>---------------+------------+--------------+-----------+-----------+-------------+---------+-----------+-----------
> > seq | 1 | 1 | 99 | 1
> > | 1 | 1 | f | f
I just discovered that changing these numbers does not change how the
sequence behaves ;(
Even after restarting the backend! Sorry!
> That makes me wonder. If sequense is treated like a single column single row
> table and it's value is guarenteed to be increasing even in case of aborted
> transaction, is it correct to say that postgresql already has nested
> transactions, albeit dormant?
No. Sequences live outside of transactions. I have no idea why there is
also a ingle column single row table created.
The output of \d command is also weird, for all sequences I get:
hannu=# \d seq
Sequence "public.seq"
Column | Type
---------------+---------
sequence_name | name
last_value | bigint
increment_by | bigint
max_value | bigint
min_value | bigint
cache_value | bigint
log_cnt | bigint
is_cycled | boolean
is_called | boolean
with only the Sequence name changing ...
---------------
Hannu
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/users-lounge/docs/faq.html