@@ -122,6 +122,67 @@ type ScriptTestAssertion struct {
122122// Unlike other engine tests, ScriptTests must be self-contained. No other tables are created outside the definition of
123123// the tests.
124124var ScriptTests = []ScriptTest {
125+ {
126+ // https://github.com/dolthub/go-mysql-server/issues/3259
127+ Dialect : "mysql" ,
128+ Name : "Missing column with same name as system variable" ,
129+ SetUpScript : []string {
130+ "CREATE DATABASE IF NOT EXISTS test_db" ,
131+ "USE test_db" ,
132+ "CREATE TABLE A (id INT)" ,
133+ "CREATE TABLE B (id INT)" ,
134+ "INSERT INTO A VALUES (1)" ,
135+ "INSERT INTO B VALUES (2)" ,
136+ },
137+ Assertions : []ScriptTestAssertion {
138+ {
139+ Query : "SELECT UNIX_TIMESTAMP(A.timestamp) FROM A LIMIT 1" ,
140+ ExpectedErr : sql .ErrTableColumnNotFound ,
141+ },
142+ {
143+ Query : "SELECT A.timestamp FROM A" ,
144+ ExpectedErr : sql .ErrTableColumnNotFound ,
145+ },
146+ {
147+ Query : "SELECT A.version FROM A" ,
148+ ExpectedErr : sql .ErrTableColumnNotFound ,
149+ },
150+ {
151+ Query : "SELECT A.max_connections FROM A" ,
152+ ExpectedErr : sql .ErrTableColumnNotFound ,
153+ },
154+ {
155+ Query : "SELECT UPPER(A.sql_mode) FROM A" ,
156+ ExpectedErr : sql .ErrTableColumnNotFound ,
157+ },
158+ {
159+ Query : "SELECT @@timestamp" ,
160+ Expected : []sql.Row {{float64 (0 )}},
161+ SkipResultsCheck : true , // dynamic var
162+ },
163+ {
164+ Query : "SELECT @@version" ,
165+ Expected : []sql.Row {{"" }},
166+ SkipResultsCheck : true , // dynamic var
167+ },
168+ {
169+ Query : "SELECT test_db.A.timestamp FROM A" ,
170+ ExpectedErr : sql .ErrTableColumnNotFound ,
171+ },
172+ {
173+ Query : "SELECT test_db.A.version FROM test_db.A" ,
174+ ExpectedErr : sql .ErrTableColumnNotFound ,
175+ },
176+ {
177+ Query : "SELECT a1.timestamp FROM A a1 JOIN B b1 ON a1.id = b1.id" ,
178+ ExpectedErr : sql .ErrTableColumnNotFound ,
179+ },
180+ {
181+ Query : "SELECT b1.max_connections FROM A a1 JOIN B b1 ON a1.id = b1.id" ,
182+ ExpectedErr : sql .ErrTableColumnNotFound ,
183+ },
184+ },
185+ },
125186 {
126187 // https://github.com/dolthub/dolt/issues/9927
127188 // https://github.com/dolthub/dolt/issues/9053
0 commit comments