[web2py] Re: help testing auth.signature with mysql/pgsql
That's not a justified reason. If I have a table with a column that has zero nulls in it, it is perfectly reasonable for me to expect to be able to add a not-null constraint after the fact. If web2py is dealing with this migration, it should at least attempt to do it correctly. It should only fail if the table already contains nulls in that column. Otherwise, it should work. Web2py tries to circumvent a migration issue, and trips-on-itself because of bad-design of order-of-operations. It should "temporarily" add a default-constraint to the temp-field, to allow the setting of the not-null constraint while the new column is empty, THEN set the not-null constraint, THEN copy the data, and THEN remove the default-constraint in case the developer did not explicitly ask for it also. This way, the legitimate-expectation could be fulfilled, and only the non-legitimate expectation fail (in case there are "really" already nulls in that column) -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
[web2py] Re: help testing auth.signature with mysql/pgsql
The problem is that adding notnull constraint causes a migration (except on sqlite). Because the field exists already web2py creates a new tmp field, than tried to move existing data over. But the data contains Null while the new field is notnull=True therefore the migration will fail. On Saturday, 22 December 2012 21:12:54 UTC-6, Cliff Kachinske wrote: > > What happens if you add the field, set it to True,then add the notnull > constraint? --
[web2py] Re: help testing auth.signature with mysql/pgsql
What happens if you add the field, set it to True,then add the notnull constraint? --
[web2py] Re: help testing auth.signature with mysql/pgsql
I reverted it so there should be no problem. This leave the original problem. If people add an auth signature, they must manually change is_active=None to is_active=True. On Saturday, 22 December 2012 13:59:13 UTC-6, Adi wrote: > > let me know when you change. i can test again... > > On Saturday, December 22, 2012 2:40:19 PM UTC-5, Massimo Di Pierro wrote: >> >> This is not exactly what I was hoping for but it shows a problem with >> trunk. >> >> It migrates is_active form notnull=False to notnull=True and then tries >> to copy the old data (which include Null values). >> >> This will break the migration. It worked for you because the step was >> only faked. The creation of the new table is never a problem. >> >> I have reverted the change in trunk. >> >> Massimo >> >> >> On Saturday, 22 December 2012 13:28:13 UTC-6, Adi wrote: >>> >>> >>> My app was in a fake migration mode, and when I enabled a migration it >>> wanted to re-ecreate two existing tables, one regular (pmt), the other >>> archive (customer_archive)... (sql.log bellow). >>> >>> I renamed existing tables in order to proceed... >>> >>> What I see is that archive table got created with is_active notnull, and >>> default T, while existing tables stayed as is... >>> >>> Tried updating record in customer table and all worked ok... >>> >>> >>> sql.log: >>> >>> timestamp: 2012-12-22T13:57:59.269217 >>> ALTER TABLE lookup ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE lookup SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE lookup DROP COLUMN is_active; >>> faked! >>> ALTER TABLE lookup ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE lookup SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE lookup DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.298807 >>> ALTER TABLE comment ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE comment SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE comment DROP COLUMN is_active; >>> faked! >>> ALTER TABLE comment ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE comment SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE comment DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.342240 >>> ALTER TABLE configuration ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE configuration SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE configuration DROP COLUMN is_active; >>> faked! >>> ALTER TABLE configuration ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE configuration SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE configuration DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.375178 >>> ALTER TABLE supplier ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE supplier SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE supplier DROP COLUMN is_active; >>> faked! >>> ALTER TABLE supplier ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE supplier SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE supplier DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.415936 >>> ALTER TABLE customer ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE customer SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE customer DROP COLUMN is_active; >>> faked! >>> ALTER TABLE customer ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE customer SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE customer DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.464933 >>> ALTER TABLE next_po_number ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE next_po_number SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE next_po_number DROP COLUMN is_active; >>> faked! >>> ALTER TABLE next_po_number ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE next_po_number SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE next_po_number DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.511872 >>> ALTER TABLE purchase_order ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE purchase_order SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE purchase_order DROP COLUMN is_active; >>> faked! >>> ALTER TABLE purchase_order ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE purchase_order SET is_active=is_active__tmp; >>> faked! >>> ALTER TABLE purchase_order DROP COLUMN is_active__tmp; >>> faked! >>> timestamp: 2012-12-22T13:57:59.618962 >>> ALTER TABLE product_family ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE product_family SET is_active__tmp=is_active; >>> faked! >>> ALTER TABLE product_family DROP COLUMN is_active; >>> faked! >>> ALTER TABLE product_family ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >>> faked! >>> UPDATE product_family SET is_active=is_active_
[web2py] Re: help testing auth.signature with mysql/pgsql
let me know when you change. i can test again... On Saturday, December 22, 2012 2:40:19 PM UTC-5, Massimo Di Pierro wrote: > > This is not exactly what I was hoping for but it shows a problem with > trunk. > > It migrates is_active form notnull=False to notnull=True and then tries to > copy the old data (which include Null values). > > This will break the migration. It worked for you because the step was only > faked. The creation of the new table is never a problem. > > I have reverted the change in trunk. > > Massimo > > > On Saturday, 22 December 2012 13:28:13 UTC-6, Adi wrote: >> >> >> My app was in a fake migration mode, and when I enabled a migration it >> wanted to re-ecreate two existing tables, one regular (pmt), the other >> archive (customer_archive)... (sql.log bellow). >> >> I renamed existing tables in order to proceed... >> >> What I see is that archive table got created with is_active notnull, and >> default T, while existing tables stayed as is... >> >> Tried updating record in customer table and all worked ok... >> >> >> sql.log: >> >> timestamp: 2012-12-22T13:57:59.269217 >> ALTER TABLE lookup ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE lookup SET is_active__tmp=is_active; >> faked! >> ALTER TABLE lookup DROP COLUMN is_active; >> faked! >> ALTER TABLE lookup ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE lookup SET is_active=is_active__tmp; >> faked! >> ALTER TABLE lookup DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.298807 >> ALTER TABLE comment ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE comment SET is_active__tmp=is_active; >> faked! >> ALTER TABLE comment DROP COLUMN is_active; >> faked! >> ALTER TABLE comment ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE comment SET is_active=is_active__tmp; >> faked! >> ALTER TABLE comment DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.342240 >> ALTER TABLE configuration ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE configuration SET is_active__tmp=is_active; >> faked! >> ALTER TABLE configuration DROP COLUMN is_active; >> faked! >> ALTER TABLE configuration ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE configuration SET is_active=is_active__tmp; >> faked! >> ALTER TABLE configuration DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.375178 >> ALTER TABLE supplier ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE supplier SET is_active__tmp=is_active; >> faked! >> ALTER TABLE supplier DROP COLUMN is_active; >> faked! >> ALTER TABLE supplier ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE supplier SET is_active=is_active__tmp; >> faked! >> ALTER TABLE supplier DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.415936 >> ALTER TABLE customer ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE customer SET is_active__tmp=is_active; >> faked! >> ALTER TABLE customer DROP COLUMN is_active; >> faked! >> ALTER TABLE customer ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE customer SET is_active=is_active__tmp; >> faked! >> ALTER TABLE customer DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.464933 >> ALTER TABLE next_po_number ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE next_po_number SET is_active__tmp=is_active; >> faked! >> ALTER TABLE next_po_number DROP COLUMN is_active; >> faked! >> ALTER TABLE next_po_number ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE next_po_number SET is_active=is_active__tmp; >> faked! >> ALTER TABLE next_po_number DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.511872 >> ALTER TABLE purchase_order ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE purchase_order SET is_active__tmp=is_active; >> faked! >> ALTER TABLE purchase_order DROP COLUMN is_active; >> faked! >> ALTER TABLE purchase_order ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE purchase_order SET is_active=is_active__tmp; >> faked! >> ALTER TABLE purchase_order DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.618962 >> ALTER TABLE product_family ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE product_family SET is_active__tmp=is_active; >> faked! >> ALTER TABLE product_family DROP COLUMN is_active; >> faked! >> ALTER TABLE product_family ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE product_family SET is_active=is_active__tmp; >> faked! >> ALTER TABLE product_family DROP COLUMN is_active__tmp; >> faked! >> timestamp: 2012-12-22T13:57:59.650635 >> ALTER TABLE sku ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; >> faked! >> UPDATE sku SET is_active__tmp=is_active; >> faked! >> ALTER TABLE sku DROP COLUMN is_active; >> faked! >> ALTER TABLE sku ADD is_active CHAR(1) NOT NULL DEFAULT 'T';
[web2py] Re: help testing auth.signature with mysql/pgsql
This is not exactly what I was hoping for but it shows a problem with trunk. It migrates is_active form notnull=False to notnull=True and then tries to copy the old data (which include Null values). This will break the migration. It worked for you because the step was only faked. The creation of the new table is never a problem. I have reverted the change in trunk. Massimo On Saturday, 22 December 2012 13:28:13 UTC-6, Adi wrote: > > > My app was in a fake migration mode, and when I enabled a migration it > wanted to re-ecreate two existing tables, one regular (pmt), the other > archive (customer_archive)... (sql.log bellow). > > I renamed existing tables in order to proceed... > > What I see is that archive table got created with is_active notnull, and > default T, while existing tables stayed as is... > > Tried updating record in customer table and all worked ok... > > > sql.log: > > timestamp: 2012-12-22T13:57:59.269217 > ALTER TABLE lookup ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE lookup SET is_active__tmp=is_active; > faked! > ALTER TABLE lookup DROP COLUMN is_active; > faked! > ALTER TABLE lookup ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE lookup SET is_active=is_active__tmp; > faked! > ALTER TABLE lookup DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.298807 > ALTER TABLE comment ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE comment SET is_active__tmp=is_active; > faked! > ALTER TABLE comment DROP COLUMN is_active; > faked! > ALTER TABLE comment ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE comment SET is_active=is_active__tmp; > faked! > ALTER TABLE comment DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.342240 > ALTER TABLE configuration ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE configuration SET is_active__tmp=is_active; > faked! > ALTER TABLE configuration DROP COLUMN is_active; > faked! > ALTER TABLE configuration ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE configuration SET is_active=is_active__tmp; > faked! > ALTER TABLE configuration DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.375178 > ALTER TABLE supplier ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE supplier SET is_active__tmp=is_active; > faked! > ALTER TABLE supplier DROP COLUMN is_active; > faked! > ALTER TABLE supplier ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE supplier SET is_active=is_active__tmp; > faked! > ALTER TABLE supplier DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.415936 > ALTER TABLE customer ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE customer SET is_active__tmp=is_active; > faked! > ALTER TABLE customer DROP COLUMN is_active; > faked! > ALTER TABLE customer ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE customer SET is_active=is_active__tmp; > faked! > ALTER TABLE customer DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.464933 > ALTER TABLE next_po_number ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE next_po_number SET is_active__tmp=is_active; > faked! > ALTER TABLE next_po_number DROP COLUMN is_active; > faked! > ALTER TABLE next_po_number ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE next_po_number SET is_active=is_active__tmp; > faked! > ALTER TABLE next_po_number DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.511872 > ALTER TABLE purchase_order ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE purchase_order SET is_active__tmp=is_active; > faked! > ALTER TABLE purchase_order DROP COLUMN is_active; > faked! > ALTER TABLE purchase_order ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE purchase_order SET is_active=is_active__tmp; > faked! > ALTER TABLE purchase_order DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.618962 > ALTER TABLE product_family ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE product_family SET is_active__tmp=is_active; > faked! > ALTER TABLE product_family DROP COLUMN is_active; > faked! > ALTER TABLE product_family ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE product_family SET is_active=is_active__tmp; > faked! > ALTER TABLE product_family DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.650635 > ALTER TABLE sku ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE sku SET is_active__tmp=is_active; > faked! > ALTER TABLE sku DROP COLUMN is_active; > faked! > ALTER TABLE sku ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE sku SET is_active=is_active__tmp; > faked! > ALTER TABLE sku DROP COLUMN is_active__tmp; > faked! > timestamp: 2012-12-22T13:57:59.688207 > ALTER TABLE item ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; > faked! > UPDATE item SET is_active__tmp=is_active; > f
[web2py] Re: help testing auth.signature with mysql/pgsql
My app was in a fake migration mode, and when I enabled a migration it wanted to re-ecreate two existing tables, one regular (pmt), the other archive (customer_archive)... (sql.log bellow). I renamed existing tables in order to proceed... What I see is that archive table got created with is_active notnull, and default T, while existing tables stayed as is... Tried updating record in customer table and all worked ok... sql.log: timestamp: 2012-12-22T13:57:59.269217 ALTER TABLE lookup ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE lookup SET is_active__tmp=is_active; faked! ALTER TABLE lookup DROP COLUMN is_active; faked! ALTER TABLE lookup ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE lookup SET is_active=is_active__tmp; faked! ALTER TABLE lookup DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.298807 ALTER TABLE comment ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE comment SET is_active__tmp=is_active; faked! ALTER TABLE comment DROP COLUMN is_active; faked! ALTER TABLE comment ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE comment SET is_active=is_active__tmp; faked! ALTER TABLE comment DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.342240 ALTER TABLE configuration ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE configuration SET is_active__tmp=is_active; faked! ALTER TABLE configuration DROP COLUMN is_active; faked! ALTER TABLE configuration ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE configuration SET is_active=is_active__tmp; faked! ALTER TABLE configuration DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.375178 ALTER TABLE supplier ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE supplier SET is_active__tmp=is_active; faked! ALTER TABLE supplier DROP COLUMN is_active; faked! ALTER TABLE supplier ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE supplier SET is_active=is_active__tmp; faked! ALTER TABLE supplier DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.415936 ALTER TABLE customer ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE customer SET is_active__tmp=is_active; faked! ALTER TABLE customer DROP COLUMN is_active; faked! ALTER TABLE customer ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE customer SET is_active=is_active__tmp; faked! ALTER TABLE customer DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.464933 ALTER TABLE next_po_number ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE next_po_number SET is_active__tmp=is_active; faked! ALTER TABLE next_po_number DROP COLUMN is_active; faked! ALTER TABLE next_po_number ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE next_po_number SET is_active=is_active__tmp; faked! ALTER TABLE next_po_number DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.511872 ALTER TABLE purchase_order ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE purchase_order SET is_active__tmp=is_active; faked! ALTER TABLE purchase_order DROP COLUMN is_active; faked! ALTER TABLE purchase_order ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE purchase_order SET is_active=is_active__tmp; faked! ALTER TABLE purchase_order DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.618962 ALTER TABLE product_family ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE product_family SET is_active__tmp=is_active; faked! ALTER TABLE product_family DROP COLUMN is_active; faked! ALTER TABLE product_family ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE product_family SET is_active=is_active__tmp; faked! ALTER TABLE product_family DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.650635 ALTER TABLE sku ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE sku SET is_active__tmp=is_active; faked! ALTER TABLE sku DROP COLUMN is_active; faked! ALTER TABLE sku ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE sku SET is_active=is_active__tmp; faked! ALTER TABLE sku DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T13:57:59.688207 ALTER TABLE item ADD is_active__tmp CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE item SET is_active__tmp=is_active; faked! ALTER TABLE item DROP COLUMN is_active; faked! ALTER TABLE item ADD is_active CHAR(1) NOT NULL DEFAULT 'T'; faked! UPDATE item SET is_active=is_active__tmp; faked! ALTER TABLE item DROP COLUMN is_active__tmp; faked! timestamp: 2012-12-22T14:05:28.630734 CREATE TABLE pmt( id INT AUTO_INCREMENT NOT NULL, tbl_uuid VARCHAR(64), po_id INT, INDEX po_id__idx (po_id), FOREIGN KEY (po_id) REFERENCES purchase_order (id) ON DELETE CASCADE, currency VARCHAR(255), invoice_no VARCHAR(255), amount_paid DOUBLE, date_wire_actg DATE, partial_payment VARCHAR(255), amount_paid2 DOUBLE, date_to_actg2 DATE, amount_paid3 DOUBLE, date_to_actg3 DATE, amount_paid4 DOUB
[web2py] Re: help testing auth.signature with mysql/pgsql
Specifically let me know: - after upgrade, do you see a migration in sql.log? - does everything seem to work or you get a ticket? Masimo On Saturday, 22 December 2012 12:30:25 UTC-6, Adi wrote: > > do you mean: db._common_fields.append(auth.signature) > > i have it, and can test now > > On Saturday, December 22, 2012 12:44:06 PM UTC-5, Massimo Di Pierro wrote: >> >> If you have fields with auth.signature and mysql/pgsql could you help me >> test the latest trunk? >> >> The reason is that I changed the is_active field from notnull=False to >> notnull=True. This should trigger a migration of your data. I want to make >> sure nothing breaks. >> >> Can you confirm this is ok? >> >> Massimo >> > --
[web2py] Re: help testing auth.signature with mysql/pgsql
Yes. That would be a good test. On Saturday, 22 December 2012 12:30:25 UTC-6, Adi wrote: > > do you mean: db._common_fields.append(auth.signature) > > i have it, and can test now > > On Saturday, December 22, 2012 12:44:06 PM UTC-5, Massimo Di Pierro wrote: >> >> If you have fields with auth.signature and mysql/pgsql could you help me >> test the latest trunk? >> >> The reason is that I changed the is_active field from notnull=False to >> notnull=True. This should trigger a migration of your data. I want to make >> sure nothing breaks. >> >> Can you confirm this is ok? >> >> Massimo >> > --
[web2py] Re: help testing auth.signature with mysql/pgsql
do you mean: db._common_fields.append(auth.signature) i have it, and can test now On Saturday, December 22, 2012 12:44:06 PM UTC-5, Massimo Di Pierro wrote: > > If you have fields with auth.signature and mysql/pgsql could you help me > test the latest trunk? > > The reason is that I changed the is_active field from notnull=False to > notnull=True. This should trigger a migration of your data. I want to make > sure nothing breaks. > > Can you confirm this is ok? > > Massimo > --