mongo-php-driver


Changes

latest
  1. another "not master" check
  2. more timeout info
  3. change version str
  4. more info on timeout
  5. check for no errmsg PHP-168
  6. check for no errmsg PHP-168
  7. added extra cursor timeout checks PHP-147
  8. better cursor memory handling
  9. split out slow tests
  10. safeguard
  11. MongoCursor::batchSize
  12. better replset connection error handling
  13. add $id field on deserialization PHP-154 Patch by Hugues Lismonde
  14. option to allow empty keys PHP-165
  15. add MongoException codes
  16. check for max name length PHP-162
  17. added getPID and getInc methods
  18. track error codes
  19. add slaveOkay option PHP-143
  20. oops PHP-154
  21. json_encode turns MongoIds into {$id:...} form PHP-154
  22. os x backwards compatible build
  23. force failover on "not master" errors
  24. neaten up rs connections
  25. connect should return true PHP-153
  26. move bson funcs to bson.c & big endian fix PHP-151
1.0.10
  1. BUMP 1.0.10
  2. fix cursor cleanup don't try to re-initialize le if le->ptr is 0
  3. fix cursor flag condition
  4. oops
  5. update toString test
  6. remove old tests
  7. use longs instead of zvals
  8. add query state field to MongoCursor::info
  9. fix socket cleanup PHP-147
  10. move connection into connectUtil & ctor
  11. make reconnection more aggressive PHP-148
  12. moved basic connection stuff into __construct
  13. throw parse exception at lower level
  14. refactor connection methods
  15. protect against double-throwing exceptions
  16. use longs, not ints
  17. checkpoint
  18. add status code PHP-145
  19. throw exception when getGridFS is passed a non-string
  20. bindata 64-bit type fix
  21. shutdown socket before close, reduce incidence of "recv() errno:104 Connection reset by peer" messages on server
  22. Revert "try SO_LINGER" This reverts commit 206c0a97cc90ca9ac93447cec870eeb8e8c952b0.
  23. Revert "make linger work on old compilers" This reverts commit 61c5535c6f7964fed0aa512769a5994a01026f32.
  24. safe op error fix
  25. make linger work on old compilers
  26. try SO_LINGER
  27. parse bindata params as longs, not ints
  28. - Solve 64bit issue in sending numeric array keys to MongoDb.
1.0.9
  1. BUMP 1.0.9
  2. cursor exception codes
  3. fix test for 5.1 (no string casting)
  4. windows compile
  5. no domain sockets on windows
  6. slprintf doesn't exist in 5.1
  7. Micro-detail: Skipped the final
  8. finally merged in Pete Warden's domain socket patch PHP-102
  9. disallow 0-length keys PHP-135
  10. don't ensure gridfs index in ctor PHP-136
  11. allow arbitrary values in fields array
  12. timeout exception should timeout value
  13. fixed replica set double frees
  14. fix gridfs double free PHP-140
  15. - Added tests for 32/64 bit integer issues.
  16. - Renamed mongo.native_int to mongo.native_long. - Added mongo.long_as_object that causes that all longs make it into PHP land as a MongoInt64 object. - Change mongo.native_long to check upon reading a long-int from Mongo whether it can be represented in PHP. If not, instead of truncating it as an inprecise float, and exception will be thrown.
  17. - Added the mongo.native_int setting, that tries to use the platform's int size for storing integers in Mongo. - Added the MongoInt32 and MongoInt64 classes to wrap around integer-size specific data.
  18. pick up already-passed responses
  19. replica set connection/failover works PHP-121
  20. de-dup cusor body code PHP-55
  21. keep response list PHP-55
  22. windows fixes
  23. made server list expandable
  24. remove deprecated tests
  25. connection improvements
  26. fsync for gridfs
  27. handle CursorNotFound flag PHP-131
  28. generated mongodate has millisecond resolution PHP-123
  29. fsync & custom w on any op
  30. timeout on all header fetches PHP-85
  31. add ASCENDING and DESCENDING consts
  32. don't be so picky about group initializer
1.0.8
  1. BUMP 1.0.8
  2. fix tests for 5.1 and 5.2
  3. always ensure index on gridfs methods
  4. fix fields passed as ints crash
  5. show correct db name on auth failure
  6. fix cursor boundary condition PHP-129
  7. use gethostname, not gethostbyname
  8. better handling of invalid input PHP-128
  9. w functionality changed
  10. added fields param to MongoGridFS::findOne PHP-124
  11. ok = 1 -> true
  12. Handle server 1.5.2+ 'ok' return status being a boolean
  13. better bson error msgs
  14. check for db max recv length
  15. finalize example PHP-120
  16. fix db name parsing PHP-118
  17. fix timed-out response handling PHP-116
  18. php 5.1 is the lose
  19. no implicit toString in 5.1
  20. get, put, delete PHP-100
  21. w & wtimeout PHP-99
  22. select collection strs
  23. better error checking for keys
  24. fix remove options PHP-107
  25. __get string conversion
  26. better UTF8 exception handling PHP-106
  27. MongoId::__set_state PHP-111
  28. catch uninitialized link in cursor init
  29. convert dbs to strings early and often
  30. 2007 was 5.2
  31. dropCollection improvements
  32. double free
1.0.7
  1. BUMP 1.0.7
  2. double free in ensureIndex
  3. count fix, take 2
  4. count fix
  5. fix max response len
  6. William Volkman's connection patch
  7. static mutex PHP-87
  8. fix double free PHP-98
  9. propagate CursorException
  10. don't track dead cursors PHP-95
  11. add symbol decode PHP-96
  12. cursor cleanup fix
  13. global default timeout
  14. date sort already works PHP-94
  15. don't rethrow bson error
1.0.6
  1. BUMP 1.0.6
  2. update $query and $orderby
  3. MongoCursor::fields() PHP-92
  4. how embarassing PHP-91
  5. big-endian fix
  6. allow 2d indexes
1.0.5
  1. BUMP 1.0.5
  2. change name of MongoCursor::getQuery to MongoCursor::info
  3. gridfs safe insert
  4. send small chunks for windows
  5. safe remove, update, & batch insert
  6. clear temp variable
  7. check for \, /, and $ in db names
  8. safe insert fix
  9. - Fixed GetQuery testing method
  10. extract buffer functions
  11. Added getQuery() tests
  12. add compare_objects handler to MongoId PHP-90
  13. add finalize opt to group helper
  14. Added MongoCursor::getQuery() method which returns information about the current DB query
  15. hacking around PHP's strange dtor order
  16. 0 means success except when it means failure on windows
  17. missing {}s, better mutex error messages
  18. allow negative field specifiers
  19. add keyf to group
  20. invalid connection url syntax fix PHP-88
  21. first 4 bytes of bin type could be anything
  22. add index name opt
1.0.4
  1. BUMP 1.0.4
  2. check response id PHP-85
  3. php.ini variable order
  4. temp 64-bit fix
  5. check len for all types
  6. detect invalid string length
  7. fix port parsing
  8. windows doesn't like negative tvals
  9. running tests w/out framework
  10. get rid of link num
  11. warnings for scalar params
  12. print warning if null is passed to MongoCursor ctor
  13. allow arbitrary db authentication on login
  14. microseconds, not milliseconds
  15. re-authenticate when connection is re-established
  16. user-configurable connect timeout PHP-86
  17. php.ini mongo.utf8 option for bc
  18. empty query should be an obj, not array PHP-84
  19. typo
  20. void*->int64_t* fix
  21. throw exception for non-utf8 strings PHP-82
  22. fix for segfault from hell
  23. add & remove connection ref on collection
  24. unique index on {files_id:1, n:1}
  25. no 3rd param to GridFS ctor
  26. remove add_property_* calls
  27. arbitrary ensure_index options
  28. arbitrary ensure_index options
  29. updated types
  30. doc, lock on dtor
  31. locking macros
  32. fix cursor free
  33. remove debugging
  34. date debugging, take 2
  35. date debugging
  36. added listDBs PHP-43
  37. storeFile takes file handle PHP-79
  38. MongoCursor::addOption PHP-74
  39. toString lists master first PHP-77
  40. cursor dtor mutex
  41. allow ' ' after commas in link str PHP-75
  42. group condition param is not required
  43. don't throw an exception if this is a tailing cursor
  44. FreeBSD connection fix PHP-72
  45. kill cursors before the connection is freed PHP-71
  46. calls callback
  47. intercept response
  48. add version to phpinfo PHP-69
  49. cursor timeout PHP-62
  50. 300% speedup in array serialization
  51. initial async stuff
  52. removed num connections & better connection struct
  53. fix gridfs property access
  54. package & getTimestamp fix
version
  1. BUMP version 1.0.2
  2. update pairing
  3. Revert "fix the way numeric keys are returned" This reverts commit e00eb6a8396cfcc57172aca27479ac2101c07ce4. In retrospect, this doesn't make sense. For example: $x = array("1" => "foo"); // works: echo $x["1"]; $c->insert($x); $x = $c->findOne(); // doesn't work: echo $x["1"];
  4. fix the way numeric keys are returned {"0" : "foo"} "0" is string ["foo"] 0 is num PHP-65
  5. 5.3 API changed arginfo macro
  6. connection, db, and collection getters
  7. back compatible persistent connections
  8. named params for ctor PHP-61
  9. connection count
  10. authenticate on connection PHP-49
  11. remove spl dependency PHP-60
  12. MongoId::getTimestamp PHP-63
  13. "special" cursor for opts
  14. added obj creation macro
  15. remove connection resource
  16. use thread id on windows
  17. check object size before inserting
  18. more flexible, neater connection
  19. gridfs md5 calculated correctly
  20. dropDups option for ensureIndex
  21. windows safe _id
1.0.1
  1. BUMP 1.0.1
  2. big endian BUG PHP-32
  3. added Cursor->immortal
  4. add dbref test
  5. update "named params"
  6. add $db field to db ref support
  7. MongoMinKey and MongoMaxKey types
  8. big endian support
  9. binary types
  10. c authentication
  11. mac compile fix
  12. varargs macro only works on linux
  13. windows compile, maybe
  14. count doesn't take min of result and limit
  15. added argument stack manipulation macro
  16. add_property_zval is trouble
  17. safe insert throws exception on error
  18. gridfs fields typo
  19. safer ts
  20. better type 2 fix
  21. binary subtype fix
  22. recv error fix
  23. MongoCursor->count() leak fix
  24. update multiple objs
  25. better MongoId generation
  26. skip tests that won't work with PHP 5.1
  27. don't use include that's only present in PHP 5.3
  28. bson_encode and bson_decode
  29. PHPUnit gobbles memory on deprecated methods
  30. MongoTimestamp has 4 bytes secs, 4 bytes inc
  31. MongoTimestamp::__construct([int])
  32. FreeBSD fix
  33. ensureIndex memory fix
  34. MongoTimestamp type
  35. better error messages on connection failure
  36. more threadsafe _id generation
  37. Removed undocumented method MongoDate::format Also didn't work on most platforms
  38. Safe insert
  39. smarter os x build
  40. $ character can be something else, set in php.ini
  41. added err funcs to DB obj
  42. Large nested array fix
  43. Error-checking mem leak fix
0.9.5
  1. BUMP 0.9.5
  2. associative arrays saved as objs, numeric arrays saved as arrays
0.9.4
  1. BUMP 0.9.4
  2. CentOS 5.3 compile
  3. 0.9.4 object handling
  4. throw MongoCursorException on $err
  5. added MongoCursor::snapshot()
  6. driver internals use objs instead of arrays
  7. listCollections() returns collections
  8. allows saving/retrieving using objs
  9. objects can be saved/retrieved
  10. added long decoding support
  11. Improved OSX build
  12. added MongoCursor::$slaveOkay
  13. persistent connection fix
  14. fixed GridFS::getBytes() bug
0.9.3
  1. BUMP 0.9.3
  2. consolidated next/has_next BUMP
  3. added slaveOkay(), tailable(), and logReplay() to MongoCursor
  4. batchInsert adds _id
  5. empty array() defaults to array type, added MongoEmptyObj
  6. Collection::findOne takes optional field param
  7. GridFS::store* returns MongoId
  8. Different limit handling, no softLimit
  9. MongoId serialize/unserialize
  10. version bump
  11. added storeBytes()
  12. 5.1+ compatible date formatting
  13. strange buildbot bug
  14. buildbot fix?
  15. optimizing inserts
  16. malloc checks
  17. allow bigger realloc
  18. optimization
  19. save mem
  20. dbref
  21. gridfs classic and bin
  22. file size is float, not long fix for 64-bit
  23. getBytes size
  24. date format, dbref
  25. isRef fix
  26. check object initialization
  27. admin/auth update
  28. more efficient cursor reuse
  29. group
  30. deserialize id
  31. allow array('x','y','z') for specifying fields
  32. maybe an id fix
  33. gridfs spec fields
  34. correct test info
  35. fixed getBytes()
  36. false -> 0
  37. make ensureIndex default to non-unique
  38. fix output check
  39. debugging
  40. debugging test
  41. pestrndup only exists in 5.2.8+
  42. date fix
  43. testing
  44. reset frees bufs
  45. try again, with args in the right order
  46. updated tests, explain
  47. persistent connection mm
  48. oops
  49. 5.1 compatible
  50. collection & cursor count
  51. expose MongoDBRef
  52. MongoUtil in PHP
  53. removed MongoUtil
  54. date constructor
  55. linux compile
  56. winsock and mem fixes
  57. fix for ian
  58. exceptions
  59. more windows stuff
  60. windows vars
  61. windows build file
  62. windows compile
  63. pairing fix
  64. non-blocking connection
  65. non-dumb random number generator
  66. dbCommand -> MongoDB::command
  67. faster, started command
  68. cleanup
  69. a bit better
  70. fatal error tests
  71. clone throws fatal error
  72. don't set clone to null
  73. insert, extra files
  74. better MongoId
  75. leaks
  76. leaks
  77. PHP 5.3 compatible
  78. fix warnings
  79. removed php
  80. fixed memory leak woot!
  81. cursor in progress
  82. cleanup
  83. all but one test passes
  84. most of gridfs
  85. gridfs skeleton
  86. collection stuff
  87. mostly db and collections stuff
  88. mongo tests
  89. ctor working
  90. doesn't blow up
  91. Conflicts: tests/MongoSuite.php
  92. conflict
  93. compiles
  94. db methods
  95. merge conflict
  96. db start
  97. move phpt to phpunit
  98. oops
  99. more GridFS tests
  100. File::getBytes()
  101. gridfs upload fix
  102. basic Mongo
  103. stash merge conflicts
  104. cursor passes all tests
  105. more mem testing
  106. insert leak
  107. adding cursor
  108. fixed array vs. obj
  109. error msg
  110. added config
  111. header ifdefs, more win compat
  112. test warnings
  113. this->server
  114. strict warning
  115. fixed connection
  116. added timestamp/minkey/maxkey
  117. test fix/debugging
  118. update index tests
  119. windows stuff
  120. dbref
  121. added unique index
  122. MongoUtil
  123. longer timeout, better error msg
  124. bootstrap for buildbot
  125. fix drop()
  126. close fd
  127. revert for os x
  128. connect timeout
  129. more tests
  130. more tests
  131. added TCP_NODELAY
  132. batch insert and find tests
  133. moving tests to phpunit
  134. better insert checking
  135. date conversion, regex len
  136. documentation, tests
  137. _id on insert
  138. release
  139. get big database responses
  140. cleaner connect
  141. cursor id fixes
  142. update iterators
  143. fix -Wall errors and cursor contains buffer type

Benchmarks