but isn't it example of wrong evaluation? Result of row_number is not correct
Looks right to me. I guess the way to get the row_number they're after out of the result set would involve changing OVER () to OVER (ORDER BY unnest(myTextArrayColumn))
The better way would be to perform the unnest in a sub-select then attach the row number in the outer select.