| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
increases and lower memory usage:
- Add a new SPMySQLStreamingResultStore class to SPMySQL.framework. This class acts as both a result set and a data store for the accompanying data, storing the row information in a custom format in a custom malloc zone.
- Amend SPDataStorage to wrap the new class, so original result information is stored in the one location in the custom format. Any edited information is handled by SPDataStorage for clean separation
- Rework table content and custom query data data stores to use the new class. This significantly speeds up data loading, resulting in faster data loads if they weren't previously network constrained, or lower CPU usage otherwise. The memory usage is also lowered, with the memory overhead for many small cells being enormously reduced.
|
|
|
|
|
|
|
| |
of truncated queries for clarity (Issue #1407)
- If SHOW FULL PROCESSLIST isn't on, and the query appears to be truncated (length == 100), add a trailing ellipsis to suggest more content
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
triggered by Issue #1184:
- Display table cells on a single line for preview purposes
- Display gray pilcrow/reverse pilcrow placeholders instead of linebreaks
- If a cell contains linebreaks, automatically trigger sheet editing mode
- Handle newly displayed linebreaks in column width detection
- If using the up/down arrow keys in a field editor, allow them to select the previous/next line within an editor if appropriat (instead of always moving to the previous/next row)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
allowed to type in
• enabled max length and BIT field validation for CustomQuery
|
|
|
|
|
|
| |
• re-enabled length checking while editing in FieldEditorSheet
• FieldEditorSheet now shows field type declaration
• some preparations for BINARY editing in FieldEditorSheet
|
|
|
|
|
|
|
| |
release builds, including a large number of 64bit compatibility upgrades and tweaks
- Upgrade RegexKitLite to 3.3
|
| |
|
|
|
|
| |
issues such as the one fixed in revision 1419. All future preference usage should be done so using these constants.
|
|
|
|
| |
• allow to enter the NULL value string even if the cell/field's maximal length is set to less then the actual NULL value string length (eg varchar(3) and NULL value string is @"NULL")
|
|
|
|
|
|
|
|
|
|
|
| |
execution of code in NSDefaultRunLoopMode (including showing Tooltips)
- improved max text length checking while inserting a text chunk if a selection is given (now it truncates it correctly)
- instead of using NSBeep() while text length checking a Tooltip will be shown
• fine-tuned SPTooltip:
• max text validation in TableContent (cell editing) shows now a tooltip if text too long
Note: Tooltip messages are tentative so far
|
| |
|
| |
|
|
|
|
|
|
| |
- Added 10.4 (Tiger) support for varchar/char length limits
Related to Issue #170
|
|
|
|
| |
Ideally we should add these limits for other field types depending on their length value.
|
|
- Significantly reduce the queries that have to be performed, improving lag - especially over slow connections (Issue #118; see new controller info under headline code changes).
- Fix Issue #117 properly (export numeric quoting - we now have access to column types and so can quote appropriately).
- Fix Issue #145 (loss of unsigned/null/default attributes when reordering columns).
- Fixes Issue #90 (support for filtering DECIMAL column types)
- Improve table scrolling speed when the table contains long items. (Added a NSFormatter to automatically truncate strings > 150 chars for display purposes only)
- Improved SQL compatibility - for example /* C style comments */ are now correctly ignored in imports and custom queries.
- Add text and symbols emphasising that the table info pane / status view row count is an approximation (partially addresses Issue #141)
- Fixes a major memory leak whenever opening or scrolling tables containing text/blob data.
- SQL import is now faster (SQL parsing part is 3x faster).
- Speed up SQL export (1.5x faster for numeric data; 1.1x faster for string data) and slightly speed up CSV export (~1.1x faster).
- Display sizes on the status view using the byte size formatter, as per table info pane.
Headline code changes:
- Add a new NSMutableString subclass, SPSQLParser. See the header file for documentation and overview, but in short it's a centralised place for SQL parsing. Centralises and improves parsing, improves comment support, improves quoting support. Despite the improved featureset this is also faster than the previous distributed implementations - for example, when used to replace the old splitQueries:, > 3x speedup.
- Implement a new controller which handles a structure and status cache for the current table, and provides structure parsing for specified tables. This cache is now used throughout the code, reducing the queries that have to be performed and providing additional information about the table structure for use; I think it also improves column type format slightly.
- The table info pane and the status view now draw all their data from the cache.
Tweaks:
- Table encoding is now detected directly instead of being derived from the collation - increased accuracy and cope with the DEFAULT encoding.
- Comments and formatting cleaned up in bits I was working on, obviously.
- A couple of methods - particularly [tablesListInstance table] and [tableDocument encoding] - have been renamed to avoid conflicts and fix code warnings.
Future improvements now possible:
- As we now have access to column types and other information, we can provide per-type behaviour where desired.
- The table parsing doesn't currently pull out comments or table indices, together with one or two other attributes. Some of this would be useful for display; some, such as indices, could be used to draw the table structure view as long as we're happy discarding a couple of columns (ie cardinality!)
|