| 1234567891011121314151617181920212223242526272829303132333435363738394041 | diff --git a/plugins/views_data_export_plugin_display_export.inc b/plugins/views_data_export_plugin_display_export.incindex 3356a8c..bf6761a 100644--- a/plugins/views_data_export_plugin_display_export.inc+++ b/plugins/views_data_export_plugin_display_export.inc@@ -544,7 +544,16 @@ class views_data_export_plugin_display_export extends views_plugin_display_feed         $select_aliases[] = "cl.$alias AS $hash";       } -      $insert_query = 'CREATE TABLE {' . $this->index_tablename() . '} SELECT @row := @row + 1 AS ' . $this->batched_execution_state->sandbox['weight_field_alias'] . ', ' . implode(', ', $select_aliases) . ' FROM (' . $query . ') AS cl, (SELECT @row := 0) AS r';+      if ($this->_get_database_driver() == 'pgsql') {+        // Create temporary sequence+        $seq_name = $this->index_tablename() . '_seq';+        $create_seq_query = 'CREATE TEMP sequence ' . $seq_name;+        // query uses sequence to create row number+        $insert_query = 'CREATE TABLE {' . $this->index_tablename() . "} AS SELECT nextval('".$seq_name."') AS " . $this->batched_execution_state->sandbox['weight_field_alias'] . ', ' . implode(', ', $select_aliases) . ' FROM (' . $query . ') AS cl';+      }+      else {+        $insert_query = 'CREATE TABLE {' . $this->index_tablename() . '} SELECT @row := @row + 1 AS ' . $this->batched_execution_state->sandbox['weight_field_alias'] . ', ' . implode(', ', $select_aliases) . ' FROM (' . $query . ') AS cl, (SELECT @row := 0) AS r';+      }        // Allow for a view to query an external database.       if (isset($view->base_database)) {@@ -552,6 +561,9 @@ class views_data_export_plugin_display_export extends views_plugin_display_feed         $external = TRUE;       } +      if ($this->_get_database_driver() == 'pgsql') {+        db_query($create_seq_query);+      }       db_query($insert_query, $args);        // Now create an index for the weight field, otherwise the queries on the@@ -778,7 +790,7 @@ class views_data_export_plugin_display_export extends views_plugin_display_feed    */   function is_compatible() {     $incompatible_drivers = array (-      'pgsql',+      //'pgsql',     );     $db_driver = $this->_get_database_driver();     return !in_array($db_driver, $incompatible_drivers);
 |