| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
safe. From now on, always use [self lockConnection] rather than [queryLock lock], independent of what thread you are running on
- A warning is written to the console when the connection is unlocked multiple times (to identify potential race conditions)
- modified MCPStreamingResult to ensure it only closes the connection once
- added a check to prevent arrow key navigation past the last row
|
|
|
|
|
|
|
| |
- Add more calls to deregister watchers to fix crashes to closing threads or objects
- Fix a couple of memory leaks
- Alter a few calls to be performed on main thread (afterDelay: operates on the thread is is called on) - this fixed database reloading after import and field/index deletion error sheets
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
background thread, and integrate for SQL import:
- Implement streaming reading of gzip-compressed files for SQL import
- Support exporting SQL dumps into a gzip-compressed file
- SPFileHandle supports the most-used subset of NSFileHandle commands for easy integration
- Integrate zlib 1.2.4 for improved gzip streaming performance (and support for custom buffer sizes and file offset positions)
This implements Issue #571 .
|
|
|
|
| |
- distinguish between any update tables list invoked by SP which causes a weak and quick refresh if nothing was changed and if the user pressed Table List Refresh button explicitly which will cancel any current db querying and pending ones
|
|
|
|
|
|
| |
- improved encoding handling while querying
- if SET NAMES ... fails bail to avoid exceptions
- this should fix http://log.sequelpro.com/view/101
|
|
|
|
| |
thread to allow the UI to update and handle events on 10.6. Also clean up the logic in MCPConnection waiting for a proxy discoonect to handle more cases and simplify code.
|
|
|
|
|
|
|
|
| |
by switching from NSCondition blocking to NSLock blocking
- Improve behaviour of SSH tunnels with no password in keychain - prompt appropriately
- Set MXPConnection to check the proxy state when attempting to reconnect a dropped connection, extending the timer when an auth UI is up. This prevents a multiple-dialogs misbehaviour (or sometimes deadlock), addressing the last part of http://log.sequelpro.com/view/86 .
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
'overlapping' access to global variables
• after querying db structure write back data on main thread
• completion list displays animated sync images if connection is just querying db structure data
• fixed some minor issue for completion list
• make sure that if last window of a connection is closed all relevant data will be removed from global variables
Note: please test!
|
|
|
|
| |
resulting from merge of our updates, increased stack depth, fix problems logging exceptions on a large number of machines)
|
|
|
|
|
|
|
|
| |
• some speed improvements for navigator
- pre-calculate display string for type info to avoid doing it all the time while refreshing the outline view
• suppress double-clicking at a not yet queried db structure if the same connection is querying another structure to avoid accessing the same storage objects from different threads (test)
• reload outline view after filtering in navigator runs in its own thread to avoid blocking SP
• fixed memory leaks while returning [obj copy]
|
|
|
|
|
|
| |
• avoid making the completion key list unique since it's possible to insert unique items only
• added trigger to query db structure after SQL import
• some work to avoid http://log.sequelpro.com/view/90 (not yet ideally - WIP)
|
|
|
|
|
| |
- collection classes as NSMutableSet are NOT thread safe!
• further tiny speed improvements for navigator
|
| |
|
|
|
|
|
|
|
|
| |
- if user typed "foo." and there's an unique schema path regardless cases (like there's an item Foo) show the content of the path Foo
- now getUniqueDbIdentifierFor:term returns an array of found type (db or table) and the found string to handle case better for completion
• tried to speed up the search in the navigator by using a NSPredicate
• [MCPConennection allKeysofDbStructure]
- fixed issue while returning if allKeysofDbStructure == nil
|
|
|
|
|
|
|
| |
• improved gathering and caching of structure data coming from connection windows with the same connection
• made the structure querying more stable against threading issues
• moved getUniqueDbIdentifierFor from MCPConnection to SPNavigatorController to be up-to-date in all connection windows
• improved detection if db structure querying should be performed or not (not yet finished)
|
|
|
|
|
|
|
|
|
|
|
| |
statements
- completion now works for server versions < 5 as well
- proc/func info will be queried by using information_schema for mysql >= 5
- changed completion logic to handle new format
- completion will get the info from SPNavigator since this controller caches all information about db structure
- optimization and fine-tuning will follow very soon
|
|
|
|
|
|
|
| |
improving both proxy disconnection and reconnection after dropped connections
- Slightly tweak SPSSHTunnel to improve proxy behaviour
|
|
|
|
|
|
|
|
|
| |
dialogs and related crashes
- Move connection error sheet close method to the connection delegate
- Tweak the information_schema db schema building query to be much faster on busy servers by amending the VIEW part
- Set the connection lock to nil after releasing, coping with connection unlocks deferred on the main thread until after dealloc
|
|
|
|
|
| |
- fixed issue if different connection windows are connected to the same connection
- prepared structure querying method to be able to add user info containing which table/db was changed if we know it to reduce the future parsing cost
|
|
|
|
|
|
| |
- fixed issues for deletion of a db like remove all relevant items and refresh the navigator
- simplified and minimized code and memory usage while querying the connection structure
- whether a schema name is an unique db or table will be evaluated on run-time via allKeysofDbStructure
|
|
|
|
|
|
|
| |
- now it accumulates the data and caches them db by db, ie one has to select a db before using its structure for completion and navigator
- next step is to avoid querying info_schema as much as possible
- it will only query the structure if something was changed
- next steps follows as soon as possible
|
|
|
|
| |
unlockConnection on the main thread.
|
|
|
|
| |
during static analysis.
|
|
|
|
|
|
|
|
| |
main thread. This cleans up calls, results in small speed improvements when making lots of queries (no more stopping/starting of keepalives), and ensures only the main thread handles the initial keepalives.
- Move connection unlocking to a blocking call to fix http://log.sequelpro.com/view/73
- Fix memory leaks caused by non-detached pthreads
|
|
|
|
| |
are listed in `information_schema`.`COLUMNS` for now which is a 'quick-fix' for i608. In the near future the gathering routine will do it db/table by db/table to minimize the traffic starting from the current selected db.
|
|
|
|
|
|
|
| |
- first implementation of a search functionality, workable but tiny issues have to be improved
- up to now the only search implemented is 'contains', regexp/fuzzy search will come soon
- the search is only performed in the main outline view, the upper one is static
- for the new search store all available schema paths uniquely in an array which will be set during queryDbStructure (this avoids re-parsing of a dict structure)
|
|
|
|
|
|
| |
- make usage of a notification sent by the [MCPConnection queryDbStructure] to update the navigator, and this decouples a doc window and MCPConnection from the navigator
- minimized the tree update - now connectionID-based
- any tree update will be now performed on main thread and waits until done to avoid 'overlapping' updates triggered by different notifications which normally ended up in an inchoate tree display
|
|
|
|
|
|
|
| |
returning nil if no error occurred (previously a blank string was returned most of the time)
- Add a new (BOOL)[MCPConnection queryErrored] method, changing all error message checks to use it for clarity
|
|
|
|
|
|
|
|
| |
- gather more information
- show infos for proc/func
- improved error handling
- reduced jittering while closing a connection window
- still hidden - if navigator is not visible no navigator code will be executed
|
|
|
|
| |
dealloc/unlock procedure. Addresses http://log.sequelpro.com/view/73
|
|
|
|
|
|
|
|
| |
address http://log.sequelpro.com/view/43 , http://log.sequelpro.com/view/46
- Improve keepalive timer interaction - this should address http://log.sequelpro.com/view/74 and http://log.sequelpro.com/view/71
- Further thread safety improvements to Custom Query, Table Document, and the history controller
|
|
|
|
| |
separation and fixing thread compatibility (not mentioned in docs but it seems NSTimers from terminated threads also terminate!)
|
| |
|
| |
|
|
|
|
| |
warnings
|
| |
|
|
|
|
| |
rather than the data processing thread. This ensures the connection unlock is walys called - even when no data is present - thus addressing Issue #594. (Prior to r1931 manual memory management caught this case anyway)
|
|
|
|
|
|
| |
- added key, extra, privileges information to it
- changed object type for 'field_name' to an array containing the values type, charset, key, extra, priv
- completion for fields now also shows PRI, MUL, etc. keys
|
|
|
|
|
|
|
|
|
| |
crashes: prevent multiple disconnects, add more checks, cancel current queries, and add a tiny delay to allow mysql cleanup.
- Alter MCPStreamingResult to no longer return a retained instance, setting up correct result disposal on autorelease but changing callers to retain as soon as they receive.
- Review and change a number of local variables shadowing/shielding other local or global variables.
|
|
|
|
| |
variables, a few leaks, and additional nil setting/checking to prevent overreleases or releases of random areas of memory.
|
|
|
|
| |
first launch of a version containing the framework. This will make the first-launch 0.9.8 experience much nicer, and avoid submitting lots of out of date reports.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
github master:
- Fix crashes in NSURLConnection (9d260f9b0e330adae01ca3255af194f46c7809b7)
- Fix bad NSStrings caused by non-terminated [cleanedAgent bytes] (d1c54608f77146e9b3a4c2ade5bbd5f5addfdf45)
- Fix for Sparkle Bug #393388: Leaking NSFileManager errors (afe8afc41f414af3234426a7406fe486f75e8485)
- Fix dictionary leak in system version fetch (f259b5e825098e8695713e16a39cf9d9b4d90edc)
- Fix NSMethodSignature leak (2d47989616547cde6cccb36ff4a33370b1b1f01c)
- Fix scheduleNextUpdateCheck crasher (9b5b541c8266cd009ee6fc779156c1a1207e8661)
- Fix appcast download crash on 10.5 if download fails (bd80144c7b67b7a66c215e40174dfb9310843573)
- Fix additional permission prompt autorelease crash (96ea09e44f018c9e10f9a1911b2104e164301876)
- Fix fr_CA.lproj symlink and generation (10bcc69c80cf58c831a411a7abf5012f3614fb10 and 0904ec151c242bc9a7a9976ed56a32e5a3b93951)
To be followed by a second part, restoring deleted nibs to be replaced by flattened 10.5+ nibs
|
|
|
|
|
|
|
| |
out at 30 seconds to prevent sleeping threads
- Improve keepalive timer interaction
|
|
|
|
|
|
| |
- Catch certain exception edge cases causing crashes (these exceptions are currently still not logged, but better than a crash)
- Capture and submit the last 10k of console log rather than the first 10k
|
|
|
|
| |
generation errors. This should address http://log.sequelpro.com/view/35
|
|
|
|
|
|
|
| |
previous 5.1.36
- Update MySQL client build script for snow leopard compatibility, and to build the client libraries as a three-way binary (x86/ppc/x86_64) in keeping with the rest of Sequel Pro
|