- Notifications
You must be signed in to change notification settings - Fork 127
Open
Description
SELECT uast_extract( uast(blob_content, 'csharp', "(//csharp:BinaryExpression_AddExpression/Left/uast:String | //csharp:InterpolatedStringExpression//csharp:InterpolatedStringTextToken[1])[starts-with(normalize-space(@Value), 'SELECT') or starts-with(normalize-space(@Value), 'select') or starts-with(normalize-space(@Value), 'UPDATE') or starts-with(normalize-space(@Value), 'update') or starts-with(normalize-space(@Value), 'DELETE') or starts-with(normalize-space(@Value), 'delete') or starts-with(normalize-space(@Value), 'INSERT') or starts-with(normalize-space(@Value), 'insert') or starts-with(normalize-space(@Value), 'CREATE') or starts-with(normalize-space(@Value), 'create') or starts-with(normalize-space(@Value), 'ALTER') or starts-with(normalize-space(@Value), 'alter') or starts-with(normalize-space(@Value), 'DROP') or starts-with(normalize-space(@Value), 'drop')]"), '@pos') AS positions, repository_id, file_path FROM ( SELECTf.repository_id, f.file_path, b.blob_contentFROM ( SELECT*FROM refs r NATURAL JOIN commit_blobs cb NATURAL JOIN blobs WHEREr.ref_name='HEAD'AND NOT IS_BINARY(blob_content) ) b INNER JOIN ( SELECT repository_id, file_path, blob_hash FROM refs r NATURAL JOIN commit_files cf WHEREr.ref_name='HEAD' ) f ONb.blob_hash=f.blob_hashANDb.repository_id=f.repository_idWHERE language(f.file_path, b.blob_content) ='C#' ) t WHERE positions IS NOT NULLThis could be parallelized adding an exchange over the topmost projection. Instead, we do this serially, causing extremely low performance on queries using uast functions on the topmost projects under certain conditions.
Metadata
Metadata
Assignees
Labels
No labels