Changeset View
Changeset View
Standalone View
Standalone View
src/infrastructure/edges/editor/PhabricatorEdgeEditor.php
| Show First 20 Lines • Show All 269 Lines • ▼ Show 20 Lines | foreach ($adds as $src_type => $edges) { | ||||
| $inserts[] = array($conn_w, $sql); | $inserts[] = array($conn_w, $sql); | ||||
| } | } | ||||
| foreach ($inserts as $insert) { | foreach ($inserts as $insert) { | ||||
| list($conn_w, $sql) = $insert; | list($conn_w, $sql) = $insert; | ||||
| $conn_w->openTransaction(); | $conn_w->openTransaction(); | ||||
| $this->openTransactions[] = $conn_w; | $this->openTransactions[] = $conn_w; | ||||
| foreach (array_chunk($sql, 256) as $chunk) { | foreach (PhabricatorLiskDAO::chunkSQL($sql) as $chunk) { | ||||
| queryfx( | queryfx( | ||||
| $conn_w, | $conn_w, | ||||
| 'INSERT INTO %T (src, type, dst, dateCreated, seq, dataID) | 'INSERT INTO %T (src, type, dst, dateCreated, seq, dataID) | ||||
| VALUES %Q ON DUPLICATE KEY UPDATE dataID = VALUES(dataID)', | VALUES %LQ ON DUPLICATE KEY UPDATE dataID = VALUES(dataID)', | ||||
| PhabricatorEdgeConfig::TABLE_NAME_EDGE, | PhabricatorEdgeConfig::TABLE_NAME_EDGE, | ||||
| implode(', ', $chunk)); | $chunk); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| /** | /** | ||||
| * Remove queued edges. | * Remove queued edges. | ||||
| * | * | ||||
| Show All 22 Lines | foreach ($deletes as $delete) { | ||||
| list($conn_w, $sql) = $delete; | list($conn_w, $sql) = $delete; | ||||
| $conn_w->openTransaction(); | $conn_w->openTransaction(); | ||||
| $this->openTransactions[] = $conn_w; | $this->openTransactions[] = $conn_w; | ||||
| foreach (array_chunk($sql, 256) as $chunk) { | foreach (array_chunk($sql, 256) as $chunk) { | ||||
| queryfx( | queryfx( | ||||
| $conn_w, | $conn_w, | ||||
| 'DELETE FROM %T WHERE (%Q)', | 'DELETE FROM %T WHERE %LO', | ||||
| PhabricatorEdgeConfig::TABLE_NAME_EDGE, | PhabricatorEdgeConfig::TABLE_NAME_EDGE, | ||||
| implode(' OR ', $chunk)); | $chunk); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| /** | /** | ||||
| * Save open transactions. | * Save open transactions. | ||||
| * | * | ||||
| ▲ Show 20 Lines • Show All 73 Lines • Show Last 20 Lines | |||||