duckdb 0.3.2-dev1262.0 → 0.3.2-dev1266.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "duckdb",
3
3
  "main": "./lib/duckdb.js",
4
- "version": "0.3.2-dev1262.0",
4
+ "version": "0.3.2-dev1266.0",
5
5
  "description": "DuckDB node.js API",
6
6
  "gypfile": true,
7
7
  "dependencies": {
package/src/duckdb.cpp CHANGED
@@ -167149,8 +167149,8 @@ void UpdateSegment::CleanupUpdate(UpdateInfo *info) {
167149
167149
  //===--------------------------------------------------------------------===//
167150
167150
  // Check for conflicts in update
167151
167151
  //===--------------------------------------------------------------------===//
167152
- static void CheckForConflicts(UpdateInfo *info, Transaction &transaction, row_t *ids, idx_t count, row_t offset,
167153
- UpdateInfo *&node) {
167152
+ static void CheckForConflicts(UpdateInfo *info, Transaction &transaction, row_t *ids, const SelectionVector &sel,
167153
+ idx_t count, row_t offset, UpdateInfo *&node) {
167154
167154
  if (!info) {
167155
167155
  return;
167156
167156
  }
@@ -167162,7 +167162,7 @@ static void CheckForConflicts(UpdateInfo *info, Transaction &transaction, row_t
167162
167162
  // as both ids and info->tuples are sorted, this is similar to a merge join
167163
167163
  idx_t i = 0, j = 0;
167164
167164
  while (true) {
167165
- auto id = ids[i] - offset;
167165
+ auto id = ids[sel.get_index(i)] - offset;
167166
167166
  if (id == info->tuples[j]) {
167167
167167
  throw TransactionException("Conflict on update!");
167168
167168
  } else if (id < info->tuples[j]) {
@@ -167180,7 +167180,7 @@ static void CheckForConflicts(UpdateInfo *info, Transaction &transaction, row_t
167180
167180
  }
167181
167181
  }
167182
167182
  }
167183
- CheckForConflicts(info->next, transaction, ids, count, offset, node);
167183
+ CheckForConflicts(info->next, transaction, ids, sel, count, offset, node);
167184
167184
  }
167185
167185
 
167186
167186
  //===--------------------------------------------------------------------===//
@@ -167713,7 +167713,7 @@ void UpdateSegment::Update(Transaction &transaction, idx_t column_index, Vector
167713
167713
  // there is already a version here, check if there are any conflicts and search for the node that belongs to
167714
167714
  // this transaction in the version chain
167715
167715
  auto base_info = root->info[vector_index]->info.get();
167716
- CheckForConflicts(base_info->next, transaction, ids, count, vector_offset, node);
167716
+ CheckForConflicts(base_info->next, transaction, ids, sel, count, vector_offset, node);
167717
167717
 
167718
167718
  // there are no conflicts
167719
167719
  // first, check if this thread has already done any updates
package/src/duckdb.hpp CHANGED
@@ -11,8 +11,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
11
11
  #pragma once
12
12
  #define DUCKDB_AMALGAMATION 1
13
13
  #define DUCKDB_AMALGAMATION_EXTENDED 1
14
- #define DUCKDB_SOURCE_ID "477c52aed"
15
- #define DUCKDB_VERSION "v0.3.2-dev1262"
14
+ #define DUCKDB_SOURCE_ID "729c0637c"
15
+ #define DUCKDB_VERSION "v0.3.2-dev1266"
16
16
  //===----------------------------------------------------------------------===//
17
17
  // DuckDB
18
18
  //