Steve Singer ssinger at ca.afilias.info
Thu Jul 4 08:07:22 PDT 2013
On 07/04/2013 07:24 AM, Raghav wrote:
> Hi Again,
>
> Sorry for my too many posts on beta :), its all my curiosity to test Beta.

You don't need to apologize, thanks for testing the beta.  I wish more 
people were testing the beta and letting us know that they are doing so 
(yes that is a hint).



>
> Planned to upgrade 2.1.2 to 2.2.0Beta and steps followed as:
>
> 1. Stop all running slon proces on all nodes.
> 2. Install new Version of Slony 2.2.0B binaries.
> 3. As per documentation, its said to optimize the cleanup_interval
> parameter to lower in seconds to trim data out of sl_log_1/sl_log_2 as
> these tables layout has changed in newer version.
> I have set cleanup_interval="10 seconds"
>
> 4. Execute SLONIK upgradation script.

Do you have the output of slonik from this step?

This step appears to have failed, or at least not work as expected 
because your table is still in the old format.

This sounds like a bug in the upgrade processing function, (where it 
allows the transaction to be committed so the version # gets updated but 
it doesn't actually update the tables)






> 5. Start slony with new binaries on all nodes.
>
> My primary.conf (slave.conf also similar just the node information changed)
>
> -bash-4.1$ more primary.conf
> ## Master Slon Conf:
> vac_frequency=3
> cleanup_interval="10 seconds"
> log_level=4
> sync_interval=2000
> sync_interval_timeout=10000
> sync_group_maxsize=6
> slon_config_cleanup_interval="5 seconds"
> syslog=0
> log_pid=false
> log_timestamp=true
> pid_file='/tmp/master_slon.pid'
> syslog_ident=slon
> cluster_name='newbuild'
> conn_info='dbname=postgres host=localhost user=postgres port=5432
> password=postgres'
> desired_sync_time=60000
> sql_on_connection="SET log_min_duration_statement TO '1000';"
>
> One row still existed in sl_log_1 while upgrading, which was not cleaned
> up by SLON process:
>
> postgres=# select * from _newbuild.sl_log_1 ;
>   log_origin | log_txid | log_tableid | log_actionseq | log_cmdtype |
>    log_cmddata
> ------------+----------+-------------+---------------+-------------+---------------------
>            1 |   592401 |           1 |             1 | I           |
> ("id") values ('2')
> (1 row)
>
> Till, step 4 all went fine, and slony schema has been upgraded to latest:
>
> postgres=# select substr(version(),1,26) as
> "PostgreSQL-Version",_newbuild.slonyversion();
>       PostgreSQL-Version     | slonyversion
> ----------------------------+--------------
>   PostgreSQL 9.2.3 on x86_64 | 2.2.0.b4
> (1 row)
>
> But, when I started slon process with new binaries, it has immediately
> crashed with below error:
>
> 2013-06-16 10:04:23 IST ERROR  remoteWorkerThread_1_1: error executing
> COPY OUT: "COPY ( select log_origin, log_txid, NULL::integer,
> log_actionseq, NULL::text, NULL::text, log_cmdtype, NULL::integer,
> log_cmdargs from "_newbuild".sl_log_script where log_origin = 1 and
> log_txid >= "pg_catalog".txid_snapshot_xmax('592613:592613:') and
> log_txid < '592630' and "pg_catalog".txid_visible_in_snapshot(log_txid,
> '592630:592630:') union all select log_origin, log_txid, NULL::integer,
> log_actionseq, NULL::text, NULL::text, log_cmdtype, NULL::integer,
> log_cmdargs from "_newbuild".sl_log_script where log_origin = 1 and
> log_txid in (select * from
> "pg_catalog".txid_snapshot_xip('592613:592613:') except select * from
> "pg_catalog".txid_snapshot_xip('592630:592630:') ) union all select
> log_origin, log_txid, log_tableid, log_actionseq, log_tablenspname,
> log_tablerelname, log_cmdtype, log_cmdupdncols, log_cmdargs from
> "_newbuild".sl_log_1 where log_origin = 1 and log_tableid in (1) and
> log_txid >= '592613' and log_txid < '592630' and
> "pg_catalog".txid_visible_in_snapshot(log_txid, '592630:592630:') union
> all select log_origin, log_txid, log_tableid, log_actionseq,
> log_tablenspname, log_tablerelname, log_cmdtype, log_cmdupdncols,
> log_cmdargs from "_newbuild".sl_log_1 where log_origin = 1 and
> log_tableid in (1) and log_txid in (select * from
> "pg_catalog".txid_snapshot_xip('592613:592613:') except select * from
> "pg_catalog".txid_snapshot_xip('592630:592630:') ) order by
> log_actionseq) TO STDOUT" ERROR:  column "log_cmdtype" does not exist
> LINE 1: ...::integer, log_actionseq, NULL::text, NULL::text, log_cmdtyp...
>                                                               ^
> 2013-06-16 10:04:23 IST DEBUG2 remoteWorkerThread_1: cleanup
> 2013-06-16 10:04:23 IST ERROR  remoteWorkerThread_1: SYNC aborted
>
> What might be the issue ? Please advice me.
>
> Thanks in advance
>
> --
> Regards
> Raghav
> Blog: htt://raghavt.blogspot.com/ <http://raghavt.blogspot.com/>
>
>
> _______________________________________________
> Slony1-general mailing list
> Slony1-general at lists.slony.info
> http://lists.slony.info/mailman/listinfo/slony1-general



More information about the Slony1-general mailing list