Search code examples
pythondjangopostgresqlcpanelweb-hosting

Django bulk_create with ignore_conflicts=True giving ProgrammingError


I am getting this strange error

ProgrammingError at /save_hsn/
syntax error at or near "ON"
LINE 1: ...021-01-28T06:17:43.784614+00:00'::timestamptz, 1) ON CONFLIC...

this is my views.py part where I am getting the error

user_gst_codes.objects.bulk_create(hsn_list, ignore_conflicts=True)

If I remove ignore_conflicts=True, everything works.

Moreover, I start getting this error after deploying my Django app on cPanel, on localhost this doesn't give any error.

On localhost-

Python 3.6.6, Django 3.1

On cPanel-

Python 3.6.11, Django 3.1

Is this an issue with the Python version?

I am inserting data in bulk and also need to keep the unique check. Any help would be appreciated.


Solution

  • Notice that the ON CONFLICT clause is only available from PostgreSQL 9.5. If you are using an earlier version, you will need a workaround to have the upsert feature. Please check local postgresql version and server postgresql version.