See 
<https://builds.apache.org/job/Phoenix-4.x-HBase-1.2/23/display/redirect?page=changes>

Changes:

[thomas] PHOENIX-3870 Backward compatibility fails between v4.9.0 and head of 
4.x

------------------------------------------
[...truncated 93.43 KB...]
Running org.apache.phoenix.trace.PhoenixTracingEndToEndIT
Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 50.51 sec - in 
org.apache.phoenix.iterate.RoundRobinResultIteratorIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 14.647 sec - in 
org.apache.phoenix.trace.PhoenixTableMetricsWriterIT
Running org.apache.phoenix.tx.FlappingTransactionIT
Tests run: 99, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1,085.062 sec 
- in org.apache.phoenix.end2end.HashJoinIT
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 9.812 sec - in 
org.apache.phoenix.tx.FlappingTransactionIT
Running org.apache.phoenix.tx.ParameterizedTransactionIT
Tests run: 67, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 461.34 sec - 
in org.apache.phoenix.end2end.index.IndexExpressionIT
Running org.apache.phoenix.tx.TransactionIT
Running org.apache.phoenix.tx.TxCheckpointIT
Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 125.603 sec - 
in org.apache.phoenix.trace.PhoenixTracingEndToEndIT
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 55.59 sec - in 
org.apache.phoenix.tx.TransactionIT
Tests run: 64, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 491.59 sec - 
in org.apache.phoenix.end2end.index.MutableIndexIT
Tests run: 52, Failures: 0, Errors: 0, Skipped: 4, Time elapsed: 224.951 sec - 
in org.apache.phoenix.tx.ParameterizedTransactionIT
Tests run: 102, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1,124.611 sec 
- in org.apache.phoenix.end2end.SortMergeJoinIT
Tests run: 40, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 299.531 sec - 
in org.apache.phoenix.tx.TxCheckpointIT
Tests run: 304, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2,080.988 sec 
- in org.apache.phoenix.end2end.index.IndexIT

Results :

Tests run: 2064, Failures: 0, Errors: 0, Skipped: 4

[INFO] 
[INFO] --- maven-failsafe-plugin:2.19.1:integration-test 
(ClientManagedTimeTests) @ phoenix-core ---

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.apache.phoenix.end2end.ColumnProjectionOptimizationIT
Running org.apache.phoenix.end2end.CreateSchemaIT
Running org.apache.phoenix.end2end.CreateTableIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.507 sec - in 
org.apache.phoenix.end2end.CreateSchemaIT
Running org.apache.phoenix.end2end.ArrayIT
Running org.apache.phoenix.end2end.CustomEntityDataIT
Running org.apache.phoenix.end2end.CastAndCoerceIT
Running org.apache.phoenix.end2end.AggregateQueryIT
Running org.apache.phoenix.end2end.ClientTimeArithmeticQueryIT
Running org.apache.phoenix.end2end.CaseStatementIT
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 9.014 sec - in 
org.apache.phoenix.end2end.CustomEntityDataIT
Running org.apache.phoenix.end2end.DerivedTableIT
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 29.106 sec - in 
org.apache.phoenix.end2end.ColumnProjectionOptimizationIT
Running org.apache.phoenix.end2end.DistinctCountIT
Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 17.518 sec - 
in org.apache.phoenix.end2end.DerivedTableIT
Running org.apache.phoenix.end2end.DropSchemaIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 11.916 sec - in 
org.apache.phoenix.end2end.DropSchemaIT
Running org.apache.phoenix.end2end.ExtendedQueryExecIT
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.401 sec - in 
org.apache.phoenix.end2end.ExtendedQueryExecIT
Tests run: 10, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 19.599 sec - 
in org.apache.phoenix.end2end.DistinctCountIT
Running org.apache.phoenix.end2end.FunkyNamesIT
Running org.apache.phoenix.end2end.GroupByIT
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.165 sec - in 
org.apache.phoenix.end2end.FunkyNamesIT
Running org.apache.phoenix.end2end.MutableQueryIT
Tests run: 80, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 88.139 sec - 
in org.apache.phoenix.end2end.ArrayIT
Tests run: 49, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 83.688 sec - 
in org.apache.phoenix.end2end.CastAndCoerceIT
Tests run: 56, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 84.384 sec - 
in org.apache.phoenix.end2end.CaseStatementIT
Running org.apache.phoenix.end2end.NotQueryIT
Running org.apache.phoenix.end2end.PointInTimeQueryIT
Running org.apache.phoenix.end2end.NativeHBaseTypesIT
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.965 sec - in 
org.apache.phoenix.end2end.NativeHBaseTypesIT
Running org.apache.phoenix.end2end.ProductMetricsIT
Tests run: 42, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 100.843 sec - 
in org.apache.phoenix.end2end.AggregateQueryIT
Running org.apache.phoenix.end2end.QueryDatabaseMetaDataIT
Tests run: 61, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 23.698 sec - 
in org.apache.phoenix.end2end.ProductMetricsIT
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 39.557 sec - in 
org.apache.phoenix.end2end.PointInTimeQueryIT
Running org.apache.phoenix.end2end.QueryIT
Tests run: 77, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 52.541 sec - 
in org.apache.phoenix.end2end.NotQueryIT
Tests run: 245, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 138.841 sec - 
in org.apache.phoenix.end2end.ClientTimeArithmeticQueryIT
Tests run: 91, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 96.223 sec - 
in org.apache.phoenix.end2end.GroupByIT
Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 162.644 sec - 
in org.apache.phoenix.end2end.CreateTableIT
Running org.apache.phoenix.end2end.SequenceIT
Running org.apache.phoenix.end2end.ReadIsolationLevelIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.927 sec - in 
org.apache.phoenix.end2end.ReadIsolationLevelIT
Running org.apache.phoenix.end2end.ToNumberFunctionIT
Running org.apache.phoenix.end2end.RowValueConstructorIT
Running org.apache.phoenix.end2end.ScanQueryIT
Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 8.135 sec - in 
org.apache.phoenix.end2end.ToNumberFunctionIT
Running org.apache.phoenix.end2end.TopNIT
Running org.apache.phoenix.end2end.SequenceBulkAllocationIT
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.232 sec - in 
org.apache.phoenix.end2end.TopNIT
Running org.apache.phoenix.end2end.TruncateFunctionIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.875 sec - in 
org.apache.phoenix.end2end.TruncateFunctionIT
Running org.apache.phoenix.end2end.UpsertSelectIT
Tests run: 112, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 62.446 sec - 
in org.apache.phoenix.end2end.QueryIT
Tests run: 56, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 22.345 sec - 
in org.apache.phoenix.end2end.SequenceBulkAllocationIT
Running org.apache.phoenix.end2end.UpsertValuesIT
Tests run: 54, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 51.487 sec - 
in org.apache.phoenix.end2end.SequenceIT
Running org.apache.phoenix.end2end.salted.SaltedTableIT
Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.11 sec - in 
org.apache.phoenix.end2end.salted.SaltedTableIT
Running org.apache.phoenix.rpc.UpdateCacheWithScnIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.275 sec - in 
org.apache.phoenix.rpc.UpdateCacheWithScnIT
Tests run: 112, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 53.356 sec - 
in org.apache.phoenix.end2end.ScanQueryIT
Running org.apache.phoenix.end2end.VariableLengthPKIT
Tests run: 112, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 179.208 sec - 
in org.apache.phoenix.end2end.MutableQueryIT
Tests run: 19, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 133.628 sec - 
in org.apache.phoenix.end2end.QueryDatabaseMetaDataIT
Tests run: 50, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 43.916 sec - 
in org.apache.phoenix.end2end.VariableLengthPKIT
Tests run: 46, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 119.763 sec - 
in org.apache.phoenix.end2end.RowValueConstructorIT
Tests run: 25, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 118.096 sec - 
in org.apache.phoenix.end2end.UpsertValuesIT
Tests run: 24, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 137.734 sec - 
in org.apache.phoenix.end2end.UpsertSelectIT

Results :

Tests run: 1421, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] --- maven-failsafe-plugin:2.19.1:integration-test 
(HBaseManagedTimeTests) @ phoenix-core ---

-------------------------------------------------------
 T E S T S
-------------------------------------------------------

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] --- maven-failsafe-plugin:2.19.1:integration-test 
(NeedTheirOwnClusterTests) @ phoenix-core ---

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running 
org.apache.hadoop.hbase.regionserver.wal.WALReplayWithIndexWritesAndCompressedWALIT
Running org.apache.phoenix.end2end.ConnectionUtilIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 28.026 sec - in 
org.apache.hadoop.hbase.regionserver.wal.WALReplayWithIndexWritesAndCompressedWALIT
Running org.apache.phoenix.end2end.CsvBulkLoadToolIT
Running org.apache.phoenix.end2end.CountDistinctCompressionIT
Running org.apache.phoenix.end2end.ContextClassloaderIT
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.155 sec - in 
org.apache.phoenix.end2end.ContextClassloaderIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 28.453 sec - in 
org.apache.phoenix.end2end.ConnectionUtilIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.097 sec - in 
org.apache.phoenix.end2end.CountDistinctCompressionIT
Running org.apache.phoenix.end2end.FlappingLocalIndexIT
Running org.apache.phoenix.end2end.IndexExtendedIT
Running org.apache.phoenix.end2end.IndexToolForPartialBuildIT
Running 
org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 28.209 sec - in 
org.apache.phoenix.end2end.IndexToolForPartialBuildIT
Running org.apache.phoenix.end2end.QueryTimeoutIT
Running org.apache.phoenix.end2end.QueryWithLimitIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 27.307 sec - in 
org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT
Running org.apache.phoenix.end2end.RegexBulkLoadToolIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 17.767 sec - in 
org.apache.phoenix.end2end.QueryTimeoutIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 15.549 sec - in 
org.apache.phoenix.end2end.QueryWithLimitIT
Running org.apache.phoenix.end2end.RenewLeaseIT
Tests run: 12, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 77.688 sec <<< 
FAILURE! - in org.apache.phoenix.end2end.CsvBulkLoadToolIT
org.apache.phoenix.end2end.CsvBulkLoadToolIT  Time elapsed: 12.817 sec  <<< 
ERROR!
com.google.common.util.concurrent.UncheckedExecutionException: 
java.lang.Exception: Service failed while running
Caused by: java.lang.Exception: Service failed while running
Caused by: com.google.common.util.concurrent.UncheckedExecutionException: 
org.apache.thrift.transport.TTransportException: Could not create ServerSocket 
on address /0.0.0.0:36880.
Caused by: org.apache.thrift.transport.TTransportException: Could not create 
ServerSocket on address /0.0.0.0:36880.

Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 79.78 sec - in 
org.apache.phoenix.end2end.FlappingLocalIndexIT
Running org.apache.phoenix.end2end.SpillableGroupByIT
Running org.apache.phoenix.end2end.StatsCollectorIT
Running org.apache.phoenix.end2end.SysTableNamespaceMappedStatsCollectorIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 37.186 sec - in 
org.apache.phoenix.end2end.RenewLeaseIT
Tests run: 2, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 17.611 sec <<< 
FAILURE! - in org.apache.phoenix.end2end.SpillableGroupByIT
testStatisticsAreNotWritten(org.apache.phoenix.end2end.SpillableGroupByIT)  
Time elapsed: 3.01 sec  <<< FAILURE!
java.lang.AssertionError
        at 
org.apache.phoenix.end2end.SpillableGroupByIT.testStatisticsAreNotWritten(SpillableGroupByIT.java:165)

Running org.apache.phoenix.end2end.UserDefinedFunctionsIT
Running org.apache.phoenix.end2end.index.ImmutableIndexIT
Tests run: 10, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 77.403 sec - 
in org.apache.phoenix.end2end.RegexBulkLoadToolIT
Running org.apache.phoenix.end2end.index.MutableIndexFailureIT
Running org.apache.phoenix.end2end.index.LocalIndexIT
Running org.apache.phoenix.end2end.index.MutableIndexReplicationIT
Tests run: 14, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 54.027 sec - 
in org.apache.phoenix.end2end.UserDefinedFunctionsIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 26.415 sec - in 
org.apache.phoenix.end2end.index.MutableIndexReplicationIT
Running org.apache.phoenix.end2end.index.txn.TxWriteFailureIT
Running org.apache.phoenix.execute.PartialCommitIT
Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.581 sec - in 
org.apache.phoenix.execute.PartialCommitIT
Running org.apache.phoenix.hbase.index.FailForUnsupportedHBaseVersionsIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 19.434 sec - in 
org.apache.phoenix.hbase.index.FailForUnsupportedHBaseVersionsIT
Running 
org.apache.phoenix.hbase.index.covered.EndToEndCoveredColumnsIndexBuilderIT
Tests run: 80, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 274.083 sec - 
in org.apache.phoenix.end2end.IndexExtendedIT
Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 141.342 sec - 
in org.apache.phoenix.end2end.index.MutableIndexFailureIT
Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 66.919 sec - in 
org.apache.phoenix.end2end.index.txn.TxWriteFailureIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 18.429 sec - in 
org.apache.phoenix.hbase.index.covered.EndToEndCoveredColumnsIndexBuilderIT
Running org.apache.phoenix.hbase.index.covered.example.FailWithoutRetriesIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 8.19 sec - in 
org.apache.phoenix.hbase.index.covered.example.FailWithoutRetriesIT
Running org.apache.phoenix.hbase.index.covered.example.EndToEndCoveredIndexingIT
Running 
org.apache.phoenix.hbase.index.covered.example.EndtoEndIndexingWithCompressionIT
Running org.apache.phoenix.iterate.RoundRobinResultIteratorWithStatsIT
Running org.apache.phoenix.iterate.ScannerLeaseRenewalIT
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 17.468 sec - in 
org.apache.phoenix.iterate.RoundRobinResultIteratorWithStatsIT
Running org.apache.phoenix.monitoring.PhoenixMetricsIT
Tests run: 120, Failures: 0, Errors: 0, Skipped: 24, Time elapsed: 294.369 sec 
- in org.apache.phoenix.end2end.StatsCollectorIT
Tests run: 120, Failures: 0, Errors: 0, Skipped: 24, Time elapsed: 300.596 sec 
- in org.apache.phoenix.end2end.SysTableNamespaceMappedStatsCollectorIT
Running org.apache.phoenix.rpc.PhoenixClientRpcIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 12.042 sec - in 
org.apache.phoenix.rpc.PhoenixClientRpcIT
Running org.apache.phoenix.rpc.PhoenixServerRpcIT
Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 137.189 sec - 
in org.apache.phoenix.hbase.index.covered.example.EndToEndCoveredIndexingIT
Tests run: 32, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 306.309 sec - 
in org.apache.phoenix.end2end.index.LocalIndexIT
Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 137.374 sec - 
in 
org.apache.phoenix.hbase.index.covered.example.EndtoEndIndexingWithCompressionIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 22.2 sec - in 
org.apache.phoenix.rpc.PhoenixServerRpcIT
Tests run: 24, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 327.192 sec - 
in org.apache.phoenix.end2end.index.ImmutableIndexIT
Tests run: 21, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 71.334 sec - 
in org.apache.phoenix.monitoring.PhoenixMetricsIT
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 167.774 sec - 
in org.apache.phoenix.iterate.ScannerLeaseRenewalIT

Results :

Failed tests: 
  SpillableGroupByIT.testStatisticsAreNotWritten:165
Tests in error: 
  
CsvBulkLoadToolIT>BaseUniqueNamesOwnClusterIT.doTeardown:36->BaseTest.tearDownMiniCluster:544->BaseTest.tearDownTxManager:441
 ยป UncheckedExecution

Tests run: 524, Failures: 1, Errors: 1, Skipped: 48

[INFO] 
[INFO] --- maven-failsafe-plugin:2.19.1:verify (ParallelStatsEnabledTest) @ 
phoenix-core ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Apache Phoenix ..................................... SUCCESS [  1.818 s]
[INFO] Phoenix Core ....................................... FAILURE [  01:13 h]
[INFO] Phoenix - Flume .................................... SKIPPED
[INFO] Phoenix - Kafka .................................... SKIPPED
[INFO] Phoenix - Pig ...................................... SKIPPED
[INFO] Phoenix Query Server Client ........................ SKIPPED
[INFO] Phoenix Query Server ............................... SKIPPED
[INFO] Phoenix - Pherf .................................... SKIPPED
[INFO] Phoenix - Spark .................................... SKIPPED
[INFO] Phoenix - Hive ..................................... SKIPPED
[INFO] Phoenix Client ..................................... SKIPPED
[INFO] Phoenix Server ..................................... SKIPPED
[INFO] Phoenix Assembly ................................... SKIPPED
[INFO] Phoenix - Tracing Web Application .................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:13 h
[INFO] Finished at: 2017-05-31T19:24:25+00:00
[INFO] Final Memory: 62M/982M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-failsafe-plugin:2.19.1:verify 
(ParallelStatsEnabledTest) on project phoenix-core: There are test failures.
[ERROR] 
[ERROR] Please refer to 
<https://builds.apache.org/job/Phoenix-4.x-HBase-1.2/ws/phoenix-core/target/failsafe-reports>
 for the individual test results.
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please 
read the following articles:
[ERROR] [Help 1] 
http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :phoenix-core
Build step 'Invoke top-level Maven targets' marked build as failure
Archiving artifacts
Compressed 1004.59 MB of artifacts by 22.9% relative to #10
Recording test results

Reply via email to