Page MenuHomePhabricator

Store type identity output in wikilambda_zobject_labels table
Closed, ResolvedPublic

Description

In order to filter the results, we can set the type when searching.

It is the output type of the embedded object, not Z2; so a Z4 returns a Z4, but a function returns its type not (necessarily) Z8.

Related Objects

StatusSubtypeAssignedTask
OpenNone
OpenNone
StalledNone
Resolvedcmassaro
OpenNone
OpenNone
OpenNone
OpenNone
OpenNone
DuplicateNone
OpenNone
Resolvedcmassaro
ResolvedJdforrester-WMF
DeclinedNone
ResolvedNone
ResolvedNone
Resolvedcmassaro
Resolvedcmassaro
ResolvedNone
Resolvedgengh
Resolvedgengh
DeclinedLindsaykwardell
ResolvedLindsaykwardell
Resolvedcmassaro
Resolvedcmassaro
ResolvedNone
ResolvedNone
Resolvedcmassaro
ResolvedNone
InvalidNone
Invalidgengh
ResolvedNone
ResolvedNone
ResolvedJdforrester-WMF
ResolvedNone
ResolvedNone
DeclinedNone
ResolvedSimoneThisDot
ResolvedSimoneThisDot
Resolvedcmassaro
ResolvedSimoneThisDot
ResolvedSimoneThisDot
Resolvedgengh
ResolvedJdforrester-WMF
ResolvedSimoneThisDot
ResolvedJdforrester-WMF
ResolvedDVrandecic
ResolvedNone
ResolvedNone
Resolvedcmassaro
ResolvedDVrandecic
ResolvedLindsaykwardell
Resolvedarthurlorenzi
ResolvedNone
InvalidNone
Resolvedcmassaro
Resolvedcmassaro
Resolvedcmassaro
Resolvedcmassaro
Resolvedcmassaro
ResolvedJdforrester-WMF
Resolvedcmassaro
Resolvedcmassaro
Resolvedcmassaro
ResolvedNone
ResolvedSimoneThisDot
ResolvedSimoneThisDot
ResolvedSimoneThisDot
ResolvedJdforrester-WMF
Resolvedcmassaro
Resolvedgengh
Resolvedcmassaro
ResolvedJdforrester-WMF
Resolvedcmassaro
Resolvedcmassaro
ResolvedNone
ResolvedDVrandecic
Resolvedcmassaro
Resolvedarthurlorenzi
Resolved AdesojiThisDot

Event Timeline

Note a type may be up to 2MB, so we need to store a hash.

This would be the call producing the type - the full type itself would be much larger indeed, but what we store here is just the type's identity, e.g. "Z6", "Z10(Z6)" or "Z8([Z6,Z10(Z6)],Z6)", which should be considerably shorter than 2MB. (The table currently declares 255 bytes for that, this might be too optimistic though).

To make it clearer, changing the title of task from "type" to "type identity", thanks!

DVrandecic renamed this task from Store type in wikilambda_zobject_labels table to Store type identity in wikilambda_zobject_labels table .Sep 4 2020, 9:24 PM

255 bytes - but strange errors may be generated if it is longer than this, for example a function with more than a dozen parameters. Alternatively we should introduce a "type" table (whose texts are blob up to 65536 bytes).

Jdforrester-WMF renamed this task from Store type identity in wikilambda_zobject_labels table to Store type identity output in wikilambda_zobject_labels table .Nov 17 2021, 5:50 PM
Jdforrester-WMF updated the task description. (Show Details)
DVrandecic raised the priority of this task from Lowest to High.Dec 8 2021, 11:35 PM

Change 745913 had a related patch set uploaded (by Genoveva Galarza; author: Genoveva Galarza):

[mediawiki/extensions/WikiLambda@master] [WIP] Add wlzl_return_type column

https://gerrit.wikimedia.org/r/745913

Discussed in 13th December 2021 KIT meeting:

Augment the search labels API with two parameters

  • return type: to search by return type instead of by type
  • strict: to include or not Z1 as return type

Change 745913 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] wikilambda_zobject_labels: Add wlzl_return_type column and migrate code

https://gerrit.wikimedia.org/r/745913