Skip to content

1.2.0

Compare
Choose a tag to compare
@zgramana zgramana released this 04 Feb 06:52
· 3377 commits to master since this release

Sync Gateway 1.2 packs a comprehensive set of enhancements and bug fixes including:

  • Database Offline/Online Administration - You can now take individual databases online/offline using the admin REST API for routine maintenance, upgrades, or to recover from datacenter network outages.
  • Sync Gateway Accelerator - Optional service which enables your Sync Gateway applications to scale horizontally to meet demanding loads.
  • Database _purge Command - Improve performance and reduce storage size by deleting tombstoned revisions from your Sync Gateway database.

Performance Improvements

  • #1163 _bulk_get uses compression inefficiently
  • #1179 Compress WebSocket _changes messages
  • #1423 Performance degradation in distributed index testing post-access work
  • #1503 First-time sync optimized backfill mode

Enhancements

  • #479 Revisit service scripts to handle custom installations and multiple sync_gateway instances
  • #545 Sync Gateway doesn't work with _doc_ids filter / Can't sync individual docs
  • #748 Enable taking a bucket offline/online
  • #881 -bucket param doesn't work in conjunction with config file where bucket not specified
  • #884 Tool to collect sync gateway debugging info
  • #899 Pass old current revision to 'document_changed' filter function
  • #908 Allow an Admin to take a DB Offline
  • #909 Allow Admin to take an Offline DB Online
  • #910 Update _resync to use bucket online/offline
  • #922 Channel Index - Feed Partitioning
  • #923 Channel Index - Index Writes
  • #925 Channel Index - Index Reads
  • #948 SG as a service is not supported on Windows
  • #969 Handle DCP stream end/reconnection
  • #993 Channel Index - User and Role notification
  • #1012 Put bucket in offline mode for n seconds
  • #1013 Automatically put bucket in offline mode when lose TAP feed
  • #1022 Run the service installer during package installation on Linux
  • #1065 Managing hashed vector clock sequences
  • #1066 Refactoring changes feed processing to support clock-based sequences
  • #1072 Distributed index: deal with SG nodes going down
  • #1073 Distributed index: Only open single vbucket stream for cfg document
  • #1075 CBGT: Dead node detection autofailover
  • #1084 Channel backfill when using vector clock sequence
  • #1087 CBGT: Single manager per SG instance
  • #1117 Emit vbucket sequences from access views
  • #1140 [Distributed Index] Fix kvChangeIndex DocChanged() throughput bottleneck
  • #1163 _bulk_get uses compression inefficiently
  • #1176 Add WebHook notifications for bucket online/offline
  • #1179 Compress WebSocket _changes messages
  • #1205 Use bulk gocb operation for GetBulkRaw
  • #1208 Avoid unnecessary channel clock retrieval
  • #1209 Separate out Server header's functional version number from binary build number
  • #1219 Can't purge documents (_purge is not implemented)
  • #1243 Shard clocks to avoid write bottlenecks
  • #1247 Use single gocb BulkOp (BulkSet) for concurrent index writes
  • #1298 [Distributed Index] sync_gateway panic when starting without feed_type.num_shards
  • #1321 Consolidate feed_params and channel_index in config
  • #1340 Change log path used in RPM
  • #1342 Change config file path used in RPM
  • #1349 Integrate Windows service wrapper into installer
  • #1479 Support style=all_docs calls to _changes with a _doc_ids filter
  • #1494 Enable REST retrieval of a running SG config
  • #1503 First-time sync optimized backfill mode

Bugs

  • #520 Fail to warn when sync_gateway user does not exist
  • #787 RequireAccess throws even though user has access to "*"
  • #792 Windows: MaxFileDescriptors console warning
  • #807 Tests with large revs: http: panic serving [::1]:59607: can't find rev:
  • #870 Documents missing when requesting _changes in SyncGateway
  • #874 Sync Gateway sometimes returns incorrect last_seq
  • #911 Detection of lost TAP feed impacting service availability
  • #943 Some example JSON configs include non-UTF8 chars
  • #959 Sync Gateway bucket shadowing crashes with error 'panic: parent id "xxx-xxxx" is missing'
  • #976 Http: panic serving runtime error: index out of range on Sync Gateway 1.1 on Ubuntu 12.04.5 x86_64 cause sync failed
  • #991 Panic if Origin header sent in request with no SG config
  • #1007 Large revs with no common parent. Panic serving, can't find rev
  • #1033 SG Panics if _bulk_get is passed empty JSON object
  • #1049 Session disappears immediately with large TTL
  • #1072 Distributed index: deal with SG nodes going down
  • #1083 MaxFileDescriptors setting shouldn't reduce the system defined values
  • #1093 Panic in (*DatabaseContext).getChangesInChannelFromView
  • #1100 [distributed_index] should we support old config format/settings for SG
  • #1111 [distributed_index] startup SG crash in sequence_clock
  • #1153 SG can't be installed as a service on Couchbase SG AMI
  • #1174 LastPolled retrieval not working during performance testing
  • #1200 GET _design fails with "Internal error: http: read on closed response body"
  • #1204 Create sysv-init script for CentOS 5
  • #1213 Changes feed for * channel missing entries
  • #1230 [distributed index] Empty channels trigger redundant clock lookups
  • #1245 Distributed-index changes feed requests has high latency as compared with old sync gateway
  • #1248 Duplicates in _changes feed with distributed index with multiple users and multiple channels
  • #1253 Gocb retry logic: _changes intermittently returning 0 results for distributed index
  • #1259 Cbheartbeat start delay causes DCP stream to not be re-sharded when SG node killed quickly
  • #1260 Race condition in sequence hasher cache
  • #1262 Changes feed not returning the latest revision for few docs
  • #1279 [Distributed Index] Intermittent panic during start up
  • #1281 ConfigServer option and backticks for the sync function break
  • #1286 Removing a node from CB-cluster and rebalance causing writer SG to crash
  • #1289 Recover from gocb timeouts and queue overflow
  • #1298 [Distributed Index] sync_gateway panic when starting without feed_type.num_shards
  • #1299 [Distributed Index] Stale pindex files can cause sync_gateway to launch in an incorrect state
  • #1305 Getting error "Failed to establish a new connection" with Sync gateway when increased the throughput
  • #1307 [Distributed Index] Roles not assigning channels to users correctly
  • #1309 Sync_gateway is going in loop when client is asking for changes.
  • #1317 Non-writer node of SG crashes when launched with other index writer node sync gateways
  • #1321 Consolidate feed_params and channel_index in config
  • #1329 ChangeWaiters failing to release when changes feed closed
  • #1336 [DB Online / Offline] sync_gateway fails to launch intermittently because it is not yet online
  • #1339 Sharded clock cas writes don't retry on cas failure
  • #1345 Set-Cookie response header for SyncGatewaySession should contain path value with /{db}
  • #1377 [DB Online / Offline] - db not returning expected error codes after losing TAP feed and going offline
  • #1379 [Distributed Index] _changes feed return incomplete response with invalid entries
  • #1389 Sync gateway not emitting webhook event when going to offline state
  • #1391 [Distributed Index] Writer memory continually growing during perf tests
  • #1392 [Distributed Index] Index writers intermittantly fail to register with CBGT
  • #1405 Index writer panics under heavy load
  • #1419 Use legacy compression for non-CBL 1.2 user agents
  • #1423 Performance degradation in distributed index testing post-access work
  • #1434 Sync_gateway not generating webhook event when bucket is deleted
  • #1440 [Distributed Index] Intermittent empty results in continuous changes feed
  • #1465 [Distributed Index] Empty doc returned to continuous _changes feed - bulk set issue
  • #1489 Client passing -H "Accept-Encoding: gzip" to changes breaks CloseNotifier
  • #1493 Pass-thru view query is failing via admin api on view created with SG 1.1.1
  • #1524 TodoLite list wasn't correctly shared / deleted tasks didn't propagate using SG DI (pre test-fest)
  • #1556 Views failing if document indexed more than once in a design

Known Issues

  • #422 Replication ordering dependencies can cause sync fn to reject updates
  • #1264 Sync Gateway memory usage climbs continously
  • #1316 Support _doc_ids filter when using distributed index
  • #1371 Not storing OpaqueSet values causes Sync Gateway panic during CBGT reshard
  • #1382 Resync operation only supported in offline state
  • #1527 Inbound REST calls which reset can prevent offline from draining
  • #1536 Improve logging when using sg_accel with non-writer config

Where to get it

You can download this release from Couchbase.com