Skip to content
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions db/blip_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -1141,10 +1141,10 @@ func (bh *blipHandler) processRev(rq *blip.Message, stats *processRevStats) (err
// due to no-conflict write restriction, but we still need to enforce security here to prevent leaking data about previous
// revisions to malicious actors (in the scenario where that user has write but not read access).
var deltaSrcRev DocumentRevision
if bh.useHLV() {
if bh.useHLV() && !base.IsRevTreeID(deltaSrcRevID) {
deltaSrcVersion, parseErr := ParseVersion(deltaSrcRevID)
if parseErr != nil {
return base.HTTPErrorf(http.StatusUnprocessableEntity, "Unable to parse version for delta source for doc %s, error: %v", base.UD(docID), err)
return base.HTTPErrorf(http.StatusUnprocessableEntity, "Unable to parse version for delta source for doc %s, error: %v", base.UD(docID), parseErr)
Copy link

Copilot AI Aug 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The error variable reference was corrected from 'err' to 'parseErr', but this fix indicates there was a bug in the original code where the wrong error variable was being used in the error message.

Copilot uses AI. Check for mistakes.
}
deltaSrcRev, err = bh.collection.GetCV(bh.loggingCtx, docID, &deltaSrcVersion, false)
} else {
Expand Down
18 changes: 18 additions & 0 deletions integration-test/certs/ca.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
-----BEGIN CERTIFICATE-----
MIIC+DCCAeCgAwIBAgIIGFXj4C4gXT0wDQYJKoZIhvcNAQELBQAwGjEYMBYGA1UE
AxMPU0cgVGVzdCBSb290IENBMB4XDTI1MDcyNTE5Mjk0MVoXDTM1MDcyNDE5Mjk0
MVowGjEYMBYGA1UEAxMPU0cgVGVzdCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEA4U33BEuhKvXh9+bRzg+eJp7idzqy5GhF9iQDdSHcnSmx
4avXZUgnJkNEsvLUSNQHqg2Wegzf7toGIucKuVkxO91jBnQdPjwUPd+56wEZbS6/
w8Ac03ViDxBevp8YnH4KCoshBbjN6LbIv7mbSFrNoUaXXKETxxBQKYnSUhq+F7sJ
t5IlfVl0xna7dVBj1q1JbwAwJWkL1JJgcvHhr4y3WT/PL2ppRN2qQwcS450KHDTG
Qw8aPzYCCbg0/61u9ViE0pmZLk49xSrk4XeB05zboj5aGtRgGbcmq1DiaCNVSNF8
SbOGIubMu5L8xhnlvymhwOdlDWwfJ9/s/7ts777DzwIDAQABo0IwQDAOBgNVHQ8B
Af8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGw1VGQSZLsWZniYn
RuI7aewQHOIwDQYJKoZIhvcNAQELBQADggEBAIjFyqKhz5FZlL/30NHlUqBPJVf8
2uB+pqkBSXhmPuKnMCIMmhCbLZmICWpN/8QGlyWN+wuwqrKO0RCscNPFN9jgisW3
FbaXuYdBVVNb23/zEraSM86icbcdwx98/lVoPYboFy++q1xYfCFHFU6V61zUtcG6
AMydnjxaJ9yeaaItbEOlIJWjOusORIy/ZPn/PVElwg3DbRCbm4JFM3jy0i74DuEo
2ADo7LVJGdg/ute7rpimwurZZMK8XmPB4mbd0omNCT2gm7Q21VAfVJOAlowKRmrk
zxYCOFDfw5fvlrNGVDaYbZl284VlJffzPtQoF9JscTsY2O1k8sjwO/RQIn0=
-----END CERTIFICATE-----
18 changes: 18 additions & 0 deletions integration-test/certs/chain.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
-----BEGIN CERTIFICATE-----
MIIC8jCCAdqgAwIBAgIIGFXj4DPOZ/EwDQYJKoZIhvcNAQELBQAwGjEYMBYGA1UE
AxMPU0cgVGVzdCBSb290IENBMB4XDTI1MDcyNTE5Mjk0MloXDTM1MDcyNDE5Mjk0
MVowGTEXMBUGA1UEAxMOY2JzLW5vZGUubG9jYWwwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQDTJ0aJw82YV6teaJHwT4fXEgPNPU1vvb5siQxQ2+ODfr8K
miNKx8gYWnMy37YkIkRQzWizUVn04pWkbhg2V/r60USf2Asccpfgi2D465+fxgbd
2KvLyK5rxVeWSY3v/134y25fDdnMOSKuIt3OSjoMCZ5pAV9ZXnNh5Ua+JumBkA4M
1dIHECRCUeCb4cjZtXP3vujxdTGRoPOCVlRl6Ex3B/LEE+7fMEdEYnQSwTEOzMG6
aMFDh80+M2C5jb/Qk/1ynUNCSyAEkNszY9e32mfCRiCQtWPg66D//nVz5Jl+9Sp8
RiOeQ30GfWogCJfahOokhVlD2qF8oCHu5MJIob4jAgMBAAGjPTA7MA4GA1UdDwEB
/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAUBgNVHREEDTALgglsb2NhbGhv
c3QwDQYJKoZIhvcNAQELBQADggEBAEC6yJkfj0Du0gj4rMtNj6J1zBMBNxFOqKBq
Wq+3+OcLgxBhOraxLNifQ9wM0AZM7t9wwKtboxmQ+wZtv7iCN6IhwrRqCVrYIuFq
VnNtoC+qJ7ewZRAW13idXwxYjkRzZlR1Lz12ar8Ia7+h78nwTuB/4VTLnJ/O5U8r
owBTMNIgCHA1cJPtYtGg72PrQ6ibfEEPYoXGCswG3rLRG5HN6AZsgcekGZlkOt1f
EvDBmxGKucPbZnI5pZBNeaUpDZL6LsqwqDMEhyvCqIDwLTmwP2wO5jffjJ8jgzd3
G8yfljsvmeG6pGqbEiryTGKiHReYG/LC5zcJ/jqMeN50Q0hfcfE=
-----END CERTIFICATE-----
1 change: 1 addition & 0 deletions integration-test/certs/couchbase_cluster_spec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"server":"couchbases://localhost","certpath":"/home/tcolvin/repos/sync_gateway/integration-test/certs/sg.pem","keypath":"/home/tcolvin/repos/sync_gateway/integration-test/certs/sg.key","cacertpath":"/home/tcolvin/repos/sync_gateway/integration-test/certs/ca.pem"}
27 changes: 27 additions & 0 deletions integration-test/certs/pkey.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEA0ydGicPNmFerXmiR8E+H1xIDzT1Nb72+bIkMUNvjg36/Cpoj
SsfIGFpzMt+2JCJEUM1os1FZ9OKVpG4YNlf6+tFEn9gLHHKX4Itg+Oufn8YG3dir
y8iua8VXlkmN7/9d+MtuXw3ZzDkiriLdzko6DAmeaQFfWV5zYeVGvibpgZAODNXS
BxAkQlHgm+HI2bVz977o8XUxkaDzglZUZehMdwfyxBPu3zBHRGJ0EsExDszBumjB
Q4fNPjNguY2/0JP9cp1DQksgBJDbM2PXt9pnwkYgkLVj4Oug//51c+SZfvUqfEYj
nkN9Bn1qIAiX2oTqJIVZQ9qhfKAh7uTCSKG+IwIDAQABAoIBAD+TeUkco+glKWt1
F8/f2lo2yd8/gHPPESlTwFoOQvwCKxpRm6O18HjorvvX4NsTWDduCYLIUUoK+Rx3
q6GdLuvbG4r3PS01EaahwLJiG387XDDqvptOkrnPQtZ00iA7Zvt0oQhMvtGfOGJv
DBLDRaP/N2uNZrydVCdbJcg2JiOEhK9JMq/8l0QSbnVmz2Ub3fbKicQgxLO2452v
X0WycHrMDQk/z3uZCXUQrrVxp1wVJun14e4dE78JoGFDbA7ARJKomsJIFOtGPJVb
Nw5ykcxAziiLaD51df1Wt5bW9SLEZ3PokbxTgewJ+CtXOir8MUNksSbNKzY5+CjP
NhCm5u0CgYEA7ukpC4dfJhwJAJMvxF8F687vRRySOCjNULoW0+V3KWufO7sJ2d2T
paa/+4dxiK+OvOh3Y6ib3O6Q0LlzR67mmmkLJ3C07GRdGAGGULPAjQezSMbBqEbW
BbXXh8X57ylb5ghDCerHto+7lejK+xCrx4xNdKYJI8EgWXmzj2dBfQUCgYEA4kHV
WAvcNEyFhPtCABG9TWTQSAqxoAxPtC9rjdm/uMGEmOTYYkwXsonUKZKd9kFo1Nys
sRVVTGpDysCeuuq/6lOC0giEyDhJ7FAq6LsAA7OUXKpmTgKDGOiLCHZjrsS1vCSP
3iJxX646EkOcvZ1+V9zeSMqmkW12CPBlm17ydwcCgYAf+V5/538pd4kQ5aH38wu0
0n4dTsSW9Yb87drOQyCej4PBF7gqy0fOXLHG9QqR04UT7TzFPrSVbew9swQlrNe6
BKL0hVYBaTE4XEPgmx4DAevRqqASaGCOZRbSWgGoK23cLHDka+KMoVHmr0AzN7j1
vOZE3U/N1DQDJZGNeLFADQKBgC2c0AG8AlyYwKIadSfGa79af5LGdSCq2raciLZE
G56HhM+98tF+PZjEqHzpDedDMHsZMcdRYazSD3CkfFt6T85Rn6HwDbS/hEebscrR
SCN25IX55D39y6gN2VmPZHErPuf7BvXlQ63iVdqwvryLL5lO8ZEDKalPw+fxbspv
zbmpAoGALyBKB1BDfvnYANPOHwY9zqGUghSDZcjVBssdR+mOmoRIkBz34eglnTLF
89LsO9OOfnJ/aP5h2BaEQXLA4sCjR82oR7G7nA+YNSWMtq4wlngDxRdBQAuXshkA
xVV5sYpY7dx2TcaYB3IcLab9LmZz+LzOc60xHIQYTPbr3UIVL3Y=
-----END RSA PRIVATE KEY-----
27 changes: 27 additions & 0 deletions integration-test/certs/sg.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAzCS0RkU5/WnEeqicKuZAkkGpTpqp8w9wATq/M4e7TI+NNZ6w
lI0kwQUBiE25i15XRYCYBH42LaPMbwk3CvnWVIAIRqB4oTPmt1j2YW78bLDd+hfD
r7yAkQ5SmrKSHTD4k8KOsy+IUWFkGIWZd7RFESf1AM5j2Db8OfPbjI6hh1UJEavw
tiHqKHQWXZZ/0DOL4B3ehWluVB1ssTMRidmfxKtjh3KaOXZAmm47TV04zo+hFlAp
T9uVt5US401q5etSw3Omfln7lu6KpmqfBlCAmbwT5LmAT6AlMYeRI+yxtrMdSs0o
OI1QQtSJoePBuY7yIXJKBVImkcZbpw849Pjl2wIDAQABAoIBADAQPDmHNv4JFu9i
H1KiX3WP7BLLq1PEwLQpZrb1MA34hmCneh+fk5W2XgP/eL3telKs0h3MsWjRdeJ2
ovT8mY/PjSNDyOL7W0izs16BSQE2Ky0kxzfrA8IjQyOVA33H996iIgLiIBA5A94a
JmXelZxScga8kRlo6L2kQn63XiSEXvA18x61gFMeaLP9ybshtqFHp8Qkqxzbt/Vt
cWF0Np1uYA70fu1Jw5DJavN/eG+cIFHKzKNTaqjVvgq2s72IEsEwX5AcCQXe9YZ1
PICOAri6/DfZL939cAIZAgm0xtSfjKxRDdDaprwqWddISVGs2+cd40bNBSQPnRJ4
HC2RKBECgYEA1NmHA78llxJN1Zi0kxmc89yjzKwj8M82sjbyJO5+afzF4cG7o9MW
9q4oMNwEnl3+otZmyswxVsaelj/N6x6PQxybJnltCitcpakY3tidGDkF/vK37+Ev
uhV2Bw3yiSoPbQn8rgom0sMa7GLjamWhqv0FIiXtjZ2XKhN6MLxe4g8CgYEA9YdV
0GJRyNbs4lN9uCMz2Qi3AgYxXHHGS8NUnvqg/a0AqIpGvhfrEiJ6Ex8MJx0rn3ue
70CrX9IQSbrQDsou5UHak/yi/phVNuSFCMjRlQ/RcPqLNVO0tQwO0PN0SvgcJrct
8vc1850bPGTCrcSTwnKKYfaMlTgx9k/WfVv8G3UCgYEAs4cKPxnBbevNZKSZYh1P
acynB+IFqn5MRwLbOFVEoMbIbQNH7gUEsGnykktxRdZICTbHmrOhxexfJKGKYI71
DQkav9fZJaOvUDcROB0CW8T1DrXQeO65n72sQIT+Fb05J6It0unTFx/jHJDH+hzg
wGULKGNPO4w5TQ8CmAq6CPcCgYEAqxwjEPPEPWyTb/NxtSdLVeC98boxIlTkNh6t
1ZGjKscro0minY37tAq0+qhzhrrMkPvNOr3d8Qxrb4aywuvinME1PFcfnMC6+mNt
1z5k2TZJ5yukYoiwclAx7ysLi8e3jr+wVRg10E5YEdHC3ukVdLjwee8h8EhWgWsI
dxro6pUCgYBpSEWCQKN0yPUN/7SnA3mAK0ogTPT1dWGCKooKO3NcAXnRQuq81DCE
Q+1ZQ5YN+TxSkJ8qEi1a/oNITsjc9IjlgElaVLeKMxMnZRxSkBWkje9fC67drYfv
T6GL+SITgpAfIlXnDV4lHhZcwKe1GQYqfCn4+FePlhj0MBjTaFbwgg==
-----END RSA PRIVATE KEY-----
18 changes: 18 additions & 0 deletions integration-test/certs/sg.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
-----BEGIN CERTIFICATE-----
MIIC2zCCAcOgAwIBAgIIGFXj4DcH9z4wDQYJKoZIhvcNAQELBQAwGjEYMBYGA1UE
AxMPU0cgVGVzdCBSb290IENBMB4XDTI1MDcyNTE5Mjk0MloXDTI1MDcyNzE5Mjk0
MlowGDEWMBQGA1UEAxMNQWRtaW5pc3RyYXRvcjCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBAMwktEZFOf1pxHqonCrmQJJBqU6aqfMPcAE6vzOHu0yPjTWe
sJSNJMEFAYhNuYteV0WAmAR+Ni2jzG8JNwr51lSACEageKEz5rdY9mFu/Gyw3foX
w6+8gJEOUpqykh0w+JPCjrMviFFhZBiFmXe0RREn9QDOY9g2/Dnz24yOoYdVCRGr
8LYh6ih0Fl2Wf9Azi+Ad3oVpblQdbLEzEYnZn8SrY4dymjl2QJpuO01dOM6PoRZQ
KU/blbeVEuNNauXrUsNzpn5Z+5buiqZqnwZQgJm8E+S5gE+gJTGHkSPssbazHUrN
KDiNUELUiaHjwbmO8iFySgVSJpHGW6cPOPT45dsCAwEAAaMnMCUwDgYDVR0PAQH/
BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMCMA0GCSqGSIb3DQEBCwUAA4IBAQCd
WrdJkTuVMR8pEXIgmf4d0Z+4BLVmaX4AUaE60ffrp8+e585vxg94j1V67CdSciLE
J/5p3Z9u4jmNcJMhNNEytyVZlmyct/QntdjCLoGLtX1HlOoTbKNaYVbyrGKVCZqN
CfTy/4KTNA4/uJUyA3KRD5ClOnQhWYBEwODr/s/2E44iEiFBgxpw83QtEhGdf/a3
JuZEapf/oeVTJYW1X92a724s20P3PdvGt0CqUqV4XTPitiNSG9Kq2EwoinuPFM51
xm3lze4cOWyvzADY/hP8d61PmMBvvl3YUAM4+gO7tiS1W4+wX7ynRke+8BXAluVG
UughJ9Jf6yHBtGi46xY8
-----END CERTIFICATE-----
2 changes: 0 additions & 2 deletions rest/blip_api_delta_sync_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -933,8 +933,6 @@ func TestBlipDeltaSyncPullRevCache(t *testing.T) {
// TestBlipDeltaSyncPush tests that a simple push replication handles deltas in EE,
// and checks that full body replication is still supported in CE.
func TestBlipDeltaSyncPush(t *testing.T) {

t.Skip("TODO: CBG-4832 - Failing because of broken legacy rev ID as deltaSrc logic in processRev")
base.SetUpTestLogging(t, base.LevelDebug, base.KeyCRUD, base.KeySGTest, base.KeySyncMsg, base.KeySync)
sgUseDeltas := base.IsEnterpriseEdition()
rtConfig := RestTesterConfig{
Expand Down
Loading