Vanaf BETA-release 22.1.274 zal een workaround voor de Odoo 16-bug opgenomen zijn. Deze release zal na verwachting voor 29 augustus in productie genomen zijn op Invantive Cloud.
Helaas komen bugs en fouten in het Odoo-repository vaak naar buiten bij raadpleging via de API’s. Een grove consistentiecontrole kan uitgevoerd worden met bijvoorbeeld:
begin
for r in
( select schema , name
from systemtables@datadictionary
where provider_name='Odoo'
order
by schema , name
)
loop
dbms_output.put_line(r.schema || '.' || r.name);
begin
execute immediate 'select 1 c from [' || r.schema || '].[' || r.name || '] limit 100';
exception
when others
then
dbms_output.put_line(sqlerrm);
end;
end loop;
end;
Indien bijvoorbeeld een fout zit in bank.rec_widget, dan wordt een fout afgedrukt zoals:
itgenodo100
syntax error at or near “0”
LINE 1: SELECT “bank_rec_widget”.id FROM (0) AS “bank_rec_widget”
Aan de schrijfwijze is te zien dat dit een foutmelding is uit de PostgreSQL-database die Odoo gebruikt.
Een ander voorbeeld is digest.digest:
itgenodo099
cannot cast type boolean to date
LINE 6: … WHERE line.company_id = 1 AND line.date > false::DATE AND
Of het vervallen van een view door een upgradefout zoals bij project_task_burndown_chart_report:
itgenodo107
relation “project_task_burndown_chart_report” does not exist
LINE 1: …LECT “project_task_burndown_chart_report”.id FROM "project_t
Een Odoo-consultant of Odoo Support kan ondersteunen bij het corrigeren van het repository.
Naar verwachting is deze bug opgelost door Odoo als onderdeel van deze commit op 7 augustus:
In een toekomstige versie van Odoo zal de fix verwerkt zijn. De workaround wordt in stand gehouden tot tenminste 3 jaar na de commit aangezien Odoo voor zover bekend geen backports verscheept. Op deze wijze kunnen ook hedendaagse Odoo-versies nog tenminste 3 jaar gebruikt worden in combinatie met Invantive’s UniversalSQL.