-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(WIP) V3 #133
(WIP) V3 #133
Conversation
7c9d605
to
0e28529
Compare
The PHP driver uses libmongoc's single-threaded client mode, which does not implement connection pools. There is also no way to implement your own connection pooling using this driver. Each single-threaded libmongoc client object maintains at most one socket connection per mongod or mongos server. The relationship between MongoDB\Driver\Manager objects and libmongoc client objects is discussed in Connection Handling in the driver documentation. Connection pools should not be needed for any single-threaded application, unless you're using an async PHP framework (e.g. Amp, ReactPHP). In those cases, you'd probably need to implement your own driver as we provide no way to integrate libmongoc's IO with a PHP event loop. Multi-threaded PHP applications (e.g. pthreads, forking) are not supported by the driver. mongodb/mongo-php-driver#688 (comment)
This improves testing timestamps and id generation on applications using mongolid.
@ravanscafi What about implementing a |
public function syncOriginalDocumentAttributes() | ||
{ | ||
try { | ||
$this->originalAttributes = unserialize(serialize($this->getDocumentAttributes())); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
note to self: this takes way too many memory, think about alternatives or drop it altogether.
|
||
- PHP**7** | ||
## Requirements | ||
- PHP **7.1** or superior |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- PHP **7.1** or superior | |
- PHP **7.1** or higher |
* Upgrade illuminate dependencies This upgrade is necessary to make mongolid compatible with laravel 7 * Revert "Upgrade illuminate dependencies" This reverts commit ea0df63. * Add Illuminate ^7.26 dependencies Add Illuminate ^7.26 dependencies * Revert "Add Illuminate ^7.26 dependencies" This reverts commit e2ffe3a. * Add Illuminate 7 dependencies
Replace Sami by Doctum
docs: remove typos from README
To-do
pool
(see php mongodb connect pool mongodb/mongo-php-driver#688 (comment))update
method (including Unsetting a field and updating the model has no effect #122)null
attributes
by other fieldfirst
queries withnull
created_at
andupdated_at
management on embedded relationsCursor
andCacheableCursor
(Review Cursor and CacheableCursor #115)DataMapper
as it does not follow Data Mapper pattern correctly (perhaps drop it?)Serializable
/Unserializable
classes on saving/retrieving objects implementing Persistable.ModelInterface
Dependent Packages
Maybe (not breaking changes, so that can be implemented later)
refresh()
(Native way to refresh a model #40)complete()
/incomplete()
and saving exceptions (for models retrieved with projections)has
,is
, etc.)