You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
143456: crosscluster/producer: allow table level auth for REPLICATIONSOURCE r=jeffswenson a=msbutler
Epic: none
Release note (ops change): previously, the user provided in the source URI in
the LDR stream required the REPLICATIONSOURCE priv at the system level. With
this change, the user only needs this priv on the source tables (i.e. a table
level priv).
143489: cspann: add ChildKey de-duplicator r=drewkimball a=andy-kimball
Add a new de-duplicator class for ChildKeys. Duplicate ChildKeys are going to become much more common with non-transactional fixups. Add an O(N) implementation that minimizes allocations by avoiding hashing KeyBytes values as strings. Instead, it hashes KeyBytes into a uint64 value, which is then hashed using a regular Go map. uint64 collisions are handled by rehashing.
Use the new de-duper in the index. In a later PR, it will be used directly in SearchSet as well to detect duplicates as early as possible.
Epic: CRDB-42943
Release note: None
Co-authored-by: Michael Butler <[email protected]>
Co-authored-by: Andrew Kimball <[email protected]>
sqlG.QueryRow(t, "CREATE LOGICALLY REPLICATED TABLES (tab2, foo2) FROM TABLES (tab, foo) ON $1 WITH BIDIRECTIONAL ON $2", gURL.String(), gURL.String()).Scan(&jobID)
testuser.ExpectErr(t, "failed privilege check: table or system level REPLICATIONDEST privilege required: user testuser does not have REPLICATIONDEST privilege on relation tab", createStmt, dbBURL.String())
2029
2056
dbA.Exec(t, fmt.Sprintf("GRANT SYSTEM REPLICATIONDEST TO %s", username.TestUser))
testuser.ExpectErr(t, "failed privilege check: table or system level REPLICATIONDEST privilege required: user testuser does not have REPLICATIONDEST privilege on relation tab2", multiTableStmt, dbBURL.String())
2056
2093
2057
2094
dbA.Exec(t, fmt.Sprintf(`GRANT REPLICATIONDEST ON TABLE tab2 TO %s`, username.TestUser))
testuser.ExpectErr(t, " uri requires REPLICATIONDEST privilege for bidirectional replication: user testuser3 does not have REPLICATIONDEST privilege on relation tab", createStmtBidi, dbBURL2.String(), dbAURL.String())
2076
2116
2077
2117
dbB.Exec(t, fmt.Sprintf("GRANT SYSTEM REPLICATIONDEST TO %s", username.TestUser+"3"))
0 commit comments