Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami

ARGOMENTO: Errore pickle su nuovo ordine di vendita

Errore pickle su nuovo ordine di vendita 4 Anni 2 Mesi fa #18531

  • DAmico
  • Avatar di DAmico
  • Offline
  • Senior Boarder
  • Messaggi: 74
  • Karma: 0
Salve a tutti,

un paio di giorni fa tramite pgadmin ho creato un nuovo database in un server posgtre diverso da quello a cui normalmente accede la procedura.
Ho quindi eseguito un backup in formato 'plain' del database originale (sempre tramite pgadmin), e quindi dopo aver trasferito il backup nel nuovo server ho eseguito il restore lanciando da riga di comando:

psql nomedb < nomebackup

tutto è filato liscio e mi sono ritovato una copia identica del database nel nuovo server postgre

Collegando il nuovo db alla procedura, funziona tutto alla perfezione tranne una sola cosa:

quando provo a creare un nuovo ordine di vendita, o provo a duplicarne uno esistente la procedura mi segnala l'errore riportato più sotto (in breve: ValueError: insecure string pickle)

ho provato a cercare qualche soluzione e le indicazioni che ho trovato fanno riferimento o ad una stringa malformata (cioè con apici in più o in meno) , o a eventuali indicatori di fine riga (\r\n) in formato diverso da quello atteso.

Qualcuno di voi ha per caso è già per caso incappato in questo problema o avete idea di cosa potrei cercare di diverso nei due db ?

Naturalmente nel frattempo nulla è cambiato negli applicativi, che continuano a funzionare normalmente se riconnetto il db originale.
Entrambi i server postgre (originale e nuovo) sono delle macchine virtuali identiche fra loro anche nella versione dei software installati.

Grazie in anticipo per qualsiasi indicazione.

Environment Information :
System : Windows-post2008Server-6.1.7601-SP1
OS Name : nt
Operating System Release : post2008Server
Operating System Version : 6.1.7601
Operating System Architecture : 32bit
Operating System Locale : it_IT.cp1252
Python Version : 2.6.5
OpenERP-Client Version : 6.1.1
Last revision No. & ID :Bazaar Package not Found !Traceback (most recent call last):
File "/usr/local/lib/python2.6/dist-packages/openerp-server/netsvc.py", line 489, in dispatch
result = ExportService.getService(service_name).dispatch(method, auth, params)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/service/web_services.py", line 599, in dispatch
res = fn(db, uid, *params)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/osv/osv.py", line 122, in wrapper
return f(self, dbname, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/osv/osv.py", line 176, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/osv/osv.py", line 167, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/osv/orm.py", line 1004, in default_get
res = ir_values_obj.get(cr, uid, 'default', False, [self._name])
File "/usr/local/lib/python2.6/dist-packages/openerp-server/addons/base_calendar/base_calendar.py", line 1815, in get
return super(ir_values, self).get(cr, uid, key, key2, new_model, meta, context, res_id_req, without_user, key2_req)
File "/usr/local/lib/python2.6/dist-packages/openerp-server/addons/base/ir/ir_values.py", line 213, in get
res = filter(None, map(lambda x: _result_get(x, keys), result))
File "/usr/local/lib/python2.6/dist-packages/openerp-server/addons/base/ir/ir_values.py", line 213, in <lambda>
res = filter(None, map(lambda x: _result_get(x, keys), result))
File "/usr/local/lib/python2.6/dist-packages/openerp-server/addons/base/ir/ir_values.py", line 208, in _result_get
datas = pickle.loads(x[2].encode('utf-8'))
File "/usr/lib/python2.6/pickle.py", line 1374, in loads
return Unpickler(file).load()
File "/usr/lib/python2.6/pickle.py", line 858, in load
dispatch[key](self)
File "/usr/lib/python2.6/pickle.py", line 966, in load_string
raise ValueError, "insecure string pickle"
ValueError: insecure string pickle
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Errore pickle su nuovo ordine di vendita 4 Anni 2 Mesi fa #18537

  • enlightx
  • Avatar di enlightx
  • Online
  • Platinum Boarder
  • Messaggi: 6064
  • Ringraziamenti ricevuti 638
  • Karma: 85
non saprei da cosa è causato, ma di sicuro non centra con gli ordini di vendita:
File "/usr/local/lib/python2.6/dist-packages/openerp-server/addons/base_calendar/base_calendar.py", line 1815, in get
Davide Corio
Odoo Solution Architect
email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
web: www.davidecorio.com
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Errore pickle su nuovo ordine di vendita 4 Anni 2 Mesi fa #18541

  • DAmico
  • Avatar di DAmico
  • Offline
  • Senior Boarder
  • Messaggi: 74
  • Karma: 0
Trovato e risolto il problema.

Anche io avevo visto quella segnalazione su base_calendar ed ho perso un bel po di tempo a cercare di capire quale potesse essere il problema che causava; invece dopo ho capito che era legato a quanto scritto nella riga precedente:

File "/usr/local/lib/python2.6/dist-packages/openerp-server/osv/orm.py", line 1004, in default_get
res = ir_values_obj.get(cr, uid, 'default', False, [self._name])

infatti il problema era dovuto ad una errata lettura dei valori di default per sale.order caricati nella tabella ir_values.
ho cancellato i record e li ho reinseriti identici ed il problema si è risolto.
Suppongo che durante il restore di questi dati dal backup qualcosa sia andato storto .... ma chissa perchè.

Grazie.
Saluti.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Errore pickle su nuovo ordine di vendita 4 Anni 2 Mesi fa #18542

  • enlightx
  • Avatar di enlightx
  • Online
  • Platinum Boarder
  • Messaggi: 6064
  • Ringraziamenti ricevuti 638
  • Karma: 85
vero, base_calendar "offuscava" brutalmente alcuni metodi standard. c'era stata una discussione riguardo a questo.

per i tuoi pickles ha fatto un restore tra versioni molto differenti di postgresql? tipo tra 8 e 9?
Davide Corio
Odoo Solution Architect
email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
web: www.davidecorio.com
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Errore pickle su nuovo ordine di vendita 4 Anni 2 Mesi fa #18544

  • DAmico
  • Avatar di DAmico
  • Offline
  • Senior Boarder
  • Messaggi: 74
  • Karma: 0
no, la versione era la stessa (8.4)

l'unica cosa che mi viene in mente è che il/i database sono installati in server con ubuntu, ma che ho usato pgadminIII sotto windows per fare il backup, e quindi ho lanciato il restore tramite psql del file così creato nella macchina ubuntu.

Potrebbero essere problemi legati a come ogni S.O. scrive i dati (vedi ad esempio il carattere di fine riga) ?
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Tempo creazione pagina: 0.131 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam