Insert/create/update/delete query doesn't work in metabase native sql query

For some reason, the create, update, insert and delete statements no longer work in our metabase v0.43.4 . If we run the statement, the table doesn't get updated/created. It used to work fine in v0.39.4. It also works fine if we run the query locally/directly to postgres db. I'm not sure what might've gone wrong after the upgrade. Any help or input would be appreciated. Thanks

diagnostic info:

{
  "browser-info": {
    "language": "en-US",
    "platform": "MacIntel",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36",
    "vendor": "Google Inc."
  },
  "system-info": {
    "file.encoding": "UTF-8",
    "java.runtime.name": "OpenJDK Runtime Environment",
    "java.runtime.version": "11.0.15+10",
    "java.vendor": "Eclipse Adoptium",
    "java.vendor.url": "https://adoptium.net/",
    "java.version": "11.0.15",
    "java.vm.name": "OpenJDK 64-Bit Server VM",
    "java.vm.version": "11.0.15+10",
    "os.name": "Linux",
    "os.version": "4.14.291-218.527.amzn2.x86_64",
    "user.language": "en",
    "user.timezone": "GMT"
  },
  "metabase-info": {
    "databases": [
      "postgres"
    ],
    "hosting-env": "unknown",
    "application-database": "postgres",
    "application-database-details": {
      "database": {
        "name": "PostgreSQL",
        "version": "12.11"
      },
      "jdbc-driver": {
        "name": "PostgreSQL JDBC Driver",
        "version": "42.3.2"
      }
    },
    "run-mode": "prod",
    "version": {
      "date": "2022-06-27",
      "tag": "v0.43.4",
      "branch": "release-x.43.x",
      "hash": "61cc28e"
    },
    "settings": {
      "report-timezone": "Asia/Kuala_Lumpur"
    }
  }
}

logs (some sensitive values were removed):

 {:template-tags {},
   :query
   "INSERT INTO \n\tfood_cost (component, cost)\n\nVALUES \n\t('AAA',2.42)\n\nON CONFLICT (component) \n    DO UPDATE SET cost = EXCLUDED.cost;"},
  :type "native",
  :parameters [],
  :middleware {:js-int-to-string? true, :add-default-userland-constraints? true}},
 :status :failed,
 :class clojure.lang.ExceptionInfo,
 :stacktrace
 ["--> driver.sql_jdbc.execute$fn__53980.invokeStatic(execute.clj:369)"
  "driver.sql_jdbc.execute$fn__53980.invoke(execute.clj:365)"
  "driver.sql_jdbc.execute$execute_statement_or_prepared_statement_BANG_.invokeStatic(execute.clj:375)"
  "driver.sql_jdbc.execute$execute_statement_or_prepared_statement_BANG_.invoke(execute.clj:372)"
  "driver.sql_jdbc.execute$execute_reducible_query$fn__54060.invoke(execute.clj:500)"
  "driver.sql_jdbc.execute$execute_reducible_query.invokeStatic(execute.clj:499)"
  "driver.sql_jdbc.execute$execute_reducible_query.invoke(execute.clj:486)"
  "driver.sql_jdbc.execute$execute_reducible_query.invokeStatic(execute.clj:494)"
  "driver.sql_jdbc.execute$execute_reducible_query.invoke(execute.clj:486)"
  "driver.sql_jdbc$fn__83581.invokeStatic(sql_jdbc.clj:54)"
  "driver.sql_jdbc$fn__83581.invoke(sql_jdbc.clj:52)"
  "query_processor.context$executef.invokeStatic(context.clj:59)"
  "query_processor.context$executef.invoke(context.clj:48)"
  "query_processor.context.default$default_runf.invokeStatic(default.clj:67)"
  "query_processor.context.default$default_runf.invoke(default.clj:65)"
  "query_processor.context$runf.invokeStatic(context.clj:45)"
  "query_processor.context$runf.invoke(context.clj:39)"
  "query_processor.reducible$identity_qp.invokeStatic(reducible.clj:12)"
  "query_processor.reducible$identity_qp.invoke(reducible.clj:9)"
  "query_processor.middleware.cache$maybe_return_cached_results$maybe_return_cached_results_STAR___51447.invoke(cache.clj:220)"
  "query_processor.middleware.permissions$check_query_permissions$fn__47230.invoke(permissions.clj:109)"
  "query_processor.middleware.mbql_to_native$mbql__GT_native$fn__50388.invoke(mbql_to_native.clj:23)"
  "query_processor$fn__52921$combined_post_process__52926$combined_post_process_STAR___52927.invoke(query_processor.clj:207)"
  "query_processor$fn__52921$combined_pre_process__52922$combined_pre_process_STAR___52923.invoke(query_processor.clj:204)"
  "query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__51368$fn__51373.invoke(resolve_database_and_driver.clj:35)"
  "driver$do_with_driver.invokeStatic(driver.clj:75)"
  "driver$do_with_driver.invoke(driver.clj:71)"
  "query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__51368.invoke(resolve_database_and_driver.clj:34)"
  "query_processor.middleware.fetch_source_query$resolve_card_id_source_tables$fn__47473.invoke(fetch_source_query.clj:281)"
  "query_processor.middleware.store$initialize_store$fn__47661$fn__47662.invoke(store.clj:11)"
  "query_processor.store$do_with_store.invokeStatic(store.clj:44)"
  "query_processor.store$do_with_store.invoke(store.clj:38)"
  "query_processor.middleware.store$initialize_store$fn__47661.invoke(store.clj:10)"
  "query_processor.middleware.normalize_query$normalize$fn__51640.invoke(normalize_query.clj:22)"
  "query_processor.middleware.constraints$add_default_userland_constraints$fn__48730.invoke(constraints.clj:53)"
  "query_processor.middleware.process_userland_query$process_userland_query$fn__51579.invoke(process_userland_query.clj:145)"
  "query_processor.middleware.catch_exceptions$catch_exceptions$fn__51951.invoke(catch_exceptions.clj:168)"
  "query_processor.reducible$async_qp$qp_STAR___44200$thunk__44202.invoke(reducible.clj:100)"
  "query_processor.reducible$async_qp$qp_STAR___44200.invoke(reducible.clj:106)"
  "query_processor.reducible$async_qp$qp_STAR___44200.invoke(reducible.clj:91)"
  "query_processor.reducible$sync_qp$qp_STAR___44211.doInvoke(reducible.clj:126)"
  "query_processor$process_userland_query.invokeStatic(query_processor.clj:326)"
  "query_processor$process_userland_query.doInvoke(query_processor.clj:322)"
  "query_processor$fn__52968$process_query_and_save_execution_BANG___52977$fn__52980.invoke(query_processor.clj:337)"
  "query_processor$fn__52968$process_query_and_save_execution_BANG___52977.invoke(query_processor.clj:330)"
  "query_processor$fn__53012$process_query_and_save_with_max_results_constraints_BANG___53021$fn__53024.invoke(query_processor.clj:349)"
  "query_processor$fn__53012$process_query_and_save_with_max_results_constraints_BANG___53021.invoke(query_processor.clj:342)"
  "api.dataset$run_query_async$fn__66704.invoke(dataset.clj:68)"
  "query_processor.streaming$streaming_response_STAR_$fn__39322$fn__39323.invoke(streaming.clj:162)"
  "query_processor.streaming$streaming_response_STAR_$fn__39322.invoke(streaming.clj:161)"
  "async.streaming_response$do_f_STAR_.invokeStatic(streaming_response.clj:65)"
  "async.streaming_response$do_f_STAR_.invoke(streaming_response.clj:63)"
  "async.streaming_response$do_f_async$task__18948.invoke(streaming_response.clj:84)"],
 :card_id nil,
 :context :ad-hoc,
 :error "Select statement did not produce a ResultSet for native query",
 :row_count 0,
 :running_time 0,
 :ex-data
 {:sql
  "-- Metabase:: userID:  queryType: native queryHash: \nINSERT INTO \n\tfood_cost (component, cost)\n\nVALUES \n\t('AAA',2.42)\n\nON CONFLICT (component) \n    DO UPDATE SET cost = EXCLUDED.cost;",
  :driver :postgres},
 :data {:rows [], :cols []}}

Hi @fatin
Write statements has never been officially supported in Metabase, so if you need those, then stay with the old version.

Could you use a function instead? Postgres allows you to return a table as a result from a function for your query while doing any updates in the function body.

i see. thanks @flamber for the reply and info. I'll try to see if we can do that @AndrewMBaines. I appreciate it. Thanks