Weekly phpMyAdmin contributions 2016 – Week4

 

Last week, the focus of the work was again divided between the bugs in the main repository and the SQL parser.

Some bugs with Export of view definitions was fixed and later was found to be actually a bug in parser’s building of CREATE statement. We also moved to disabling the Drag-and-drop import on the Insert Rows page if the page has a file type input so that the users could use Chrome’s default drag-drop feature which allows them to drop files directly on the input.

Some refactoring work was also undertaken which mainly was regarding removal of unnecessary embedding token parameter and its value by default in the links in navigation. This was no longer needed since the team had previously decided to check for the token in only POST requests.

Next week would mostly again focus on SQL parser’s bugs which have been tracked in the main repository and I may also try and fix some long outstanding bugs in the main repository.

Handled issues:
* #12587 Enum Types are replaced with 0
* #12461 Can’t Execute SQL With Sub-Query Due To “LIMIT 0,25” Inserted At Wrong Place
* #12577 ‘Forgets’ current table after a custom SQL execution
* #12321 Wrong query in errormessage
* #12382 Bug in zoom search
* #12575 New index Confirm adds whitespace around the field name
* #12242 Edit routine detail dialog does not fill “Return length” field in mysql functions
* #12572 $cfg[‘AllowArbitraryServer’] = true has no effect
* #12298 View definitions not exported
* #12300 Export selective tables by-default dumps Events also
* #12487 Drag and drop import prevents file dropping to blob column file selector on the insert tab
* #12526 Remove ‘token’ parameter from Navigation links
* #12530 Function “Edit routine” crashes when the current user is not the definer, even if privileges are adequate
* #12554 Absence of scrolling makes it impossible to read longer text values in grid editing
* #12565 German Translation under Replication is wrong

Weekly phpMyAdmin contributions 2016 – Week3

 

Like the previous two weeks, I focused on fixing issues with the SQL parser in the first part of the week, while the later part of the week was focused on bug-fixing in the phpMyAdmin repository.

Some PRs that I had made two weeks back in the SQL parser got merged last week after a few alterations. Michal realized there was a bug in parsing the syntax of INSERT INTO … SELECT … ON DUPLICATE KEY as the call to parse SELECT statement would not break on finding the ON DUPLICATE KEY keywords. A different condition check had to added for this special case in parsing of Select statement. Spatial extension support (for ex. POINT, GEOMETRY datatypes) was added to the SQL parser.

Some bugs related to bad export and bad SQL generated in copying the databases with Generated/Virtual columns were indirectly  related to the SQL parser and were fixed. There are some differences in MySQL and MariaDB regarding the implementation of virtual columns, but we chose an approach which would work fine with both the DBMSs.

Next week might be a little break from direct SQL parser’s issues and might focus on parser issues originating from the main repo along with other bugs that have not been attended in the main repository.

Handled issues:
* #12272 Adding a new row with default enum goes to no selection when you want to add more then 2 rows
* #12320 Copy a user does not copy user group
* #12221 Bad table export in case of generated columns
* #12518 Unable to copy database with virtual generated columns… / MySQL Error #3105
* #12558 Cannot redeclare pma_tableheader()
* #12473 Code can throw unhandled exception
* #12549 Action : copy table with new prefix doesn’t keep the auto increment value
* #11628 INSERT … ON DUPLICATE KEY
* #48 REPLACE INTO … SELECT … not implemented
* #78 INSERT … SELECT … ON DUPLICATE KEY UPDATE broken
* #59 Non-reserved keywords should be allowed as a field name
* #72 Query with keyword field name built wrong
* #73 INSERT … SELECT Syntax
* #50 Unrecognized keyword ON, DUPLICATE and KEY
* #74 SET NAMES … Syntax
* #51 SET statement not properly parsed
* #55 Missing spatial extension support

Weekly phpMyAdmin contributions 2016 – Week2

Last week was a second in working towards my phpMyAdmin contract. It was mostly focused on fixing some issues with the SQL Parser. I also handled some bugs with the main repository which included #12545, which was actually fixed in SQL Parser’s repository as it was more of a parser issue in building of the CREATE statement.

Apart from the ones mentioned in the list below, I also worked on some other issues and have made the PRs #70, #71, #75 and #12544, #12548, which would fix a few more issues once merged.

Next week would have its focus divided on similar lines with major contributions towards the SQL Parser bug-fixing and some small fixes in the main repository as well.

Handled issues:
* #12551 Can’t set Decimal Places on Columns
* #12545 Partition export INNODB syntax error “MAXVALUEENGINE=,”
* #12546 can’t export all tables to .sql file
* #12531 Properly flag queries as DROP DATABASE
* #49 CREATE TABLE table_copy LIKE table;
* #53 ALTER TABLE table COMMENT=’Comment of table’;
* #10 ignore missed semicolons
* #65 Allow two indexes on same column
* #61 Add dependency on mbstring extension to composer file