[web2py] Re: help testing auth.signature with mysql/pgsql

2013-06-16 Thread Arnon Marcus
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

2012-12-22 Thread Massimo Di Pierro
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

2012-12-22 Thread Cliff Kachinske
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

2012-12-22 Thread Massimo Di Pierro
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

2012-12-22 Thread Adi
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

2012-12-22 Thread Massimo Di Pierro
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

2012-12-22 Thread Adi

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

2012-12-22 Thread Massimo Di Pierro
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

2012-12-22 Thread Massimo Di Pierro
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

2012-12-22 Thread Adi
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
>

--