No, unfortunately, but it needs to be. The basic rules from SchemaEvolution.java look like:
structs (including the top row): if field names are available (post HIVE-4243), use name matching otherwise use positional matching lists, maps, unions: children must match Many primitives can convert to each other, but this list needs to be cleaned up: boolean, byte, short, int, long, float, double, decimal -> boolean, byte, short, int, long, float, double, decimal, string, char, varchar, timestamp string, char, varchar -> all timestamp -> boolean, byte, short, int, long, float, double, decimal, string, char, varchar, date date -> string, char, varchar, timestamp binary -> string, char, varchar, date .. Owen On Mon, Dec 12, 2016 at 2:55 PM, Dain Sundstrom <[email protected]> wrote: > Is "ORC's schema evolution uses the column names when they are availableā > documented somewhere? > > -dain > > > On Dec 12, 2016, at 2:24 PM, Owen O'Malley (JIRA) <[email protected]> > wrote: > > > > Owen O'Malley created ORC-120: > > --------------------------------- > > > > Summary: Create a backwards compatibility mode of ignoring > names for evolution > > Key: ORC-120 > > URL: https://issues.apache.org/jira/browse/ORC-120 > > Project: Orc > > Issue Type: Task > > Reporter: Owen O'Malley > > > > > > ORC's schema evolution uses the column names when they are available. > Hive 2.1 uses a positional schema, so ORC should support a backward > compatibility mode for Hive users during the transition. > > > > > > > > -- > > This message was sent by Atlassian JIRA > > (v6.3.4#6332) > >
