问题标签 [scalapb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scalapb - 从线程池运行 scalapbc 命令
我正在尝试从线程池运行 scalapb 命令,每个线程都运行该scalapbc
命令;
当我这样做时,我收到以下表单错误:
根据我的谷歌搜索,当 /tmp 文件夹已满或试图同时被多个代码访问时,会出现此问题。
我的问题是,有没有办法使用线程发出 scalapbc 命令而不会出现上述错误?如何确保各个线程使用的临时文件夹不会相互干扰?
当我运行代码时,大多数时候都会出现此问题,但有时构建也会通过。
apache-spark - 使用 bcl.DateTime 字段在原型案例类上创建数据框会抛出 none 不是术语异常
我有一个通过 scalapb 从 .proto 文件生成的案例类,它有一些 bcl.DateTime 类型的字段。案例类定义如下:
我能够创建这个案例类的一个实例并查看内容如下:
但是,当我在此之上创建 Spark 数据框时,如下所示:
我收到以下错误:
如果我从 proto 类中删除 DateTime 字段,它似乎工作正常。关于如何在带有 bcl.DateTime 字段的原型类之上创建数据帧的任何指示?
apache-spark - SparkSQL 与 ScalaPB:在输出原型格式中使用 MapType 会在调用 toByteString 时产生 scala.MatchError
以下是我的输出消息格式:
在准备输出数据集时,我使用以下方法来包含一个虚拟地图
在这一步之前它工作正常。但是,当我打电话时:
我收到以下错误:
如果我删除类别字段,它似乎工作正常。请让我知道如何将 MapType 字段编写为 protobuf 消息
apache-spark - 带有 ScalaPB 的 SparkSQL:从 DataFrame 转换为原型数据集时跳过原型字段时出错
我有以下原始消息,需要使用 ScalaPB 通过 Spark 编写:
TypeA
并且TypeB
是接收方的子类EnforcementData
,它使用 protobuf-net 来反序列化。
现在,我的 Spark 数据框可以包含 a 列或 b 列。假设, df 是我的数据框,我称之为:
df.withColumn(b, null).as[EnforcementData].map(_.toByteArray)
对于 TypeA 消息df.withColumn(a, null).as[EnforcementData].map(_.toByteArray)
用于 B 类消息
但是使用 protobuf-net 反序列化消息的接收器会引发 StackOverflow 异常。我还尝试传递一个虚拟案例类而不是 null ,但它似乎仍然不起作用。
请让我知道如何处理?
scala - 如何将 sbt-protoc 和 scalapb 与 sbt 交叉构建集成?
我有一个库,需要两个不同版本的库,"com.thesamet.scalapb" %% "compilerplugin"
具体取决于 Scala 版本。
在我的project/scalapb.sbt
我有这个代码:
执行sbt clean "++2.11.12 compile
我得到>>>>>>>> Using lastest version. 2.12
但在日志中,我还可以看到交叉构建插件在上一条消息之后将版本更改为 Scala 2.11:
所以我想顺序是:
- sbt 使用默认的 Scala 版本加载插件配置。
- 交叉构建更改了 scala 版本
如何sbt-protoc
与 sbt cross-build 集成?
scala - 如何定义特定子类型的隐式编码器并将其传递给 AvroSchema
Encoder[E]
是否可以为任何子类型E
(例如,在is的代码实例中E
扩展GeneratedEnum
类的任何子类型)定义和传递到where是包含as 字段的某个案例类。E
Color
AvroSchema[C]
C
E
完整的源代码在这里
基本上希望 like 的任何子类型实例都GeneratedEnum
编码Color
为String
.
scala - 如何将“编译中的目标”添加到使用惰性 val root = project.in(".") 定义的 SBT 项目中
我有一个项目:
我希望将 ScalaPB 添加到项目中,我需要添加:
如何将其添加到惰性验证项目中?
scala - Kubernetes 中使用 grpc 客户端的 grpc 服务的高延迟
我在 kubernetes 集群中部署了服务(都是用 scala 编写的),让我们将它们命名为外部服务和内部服务
- 外部服务 - 5 个 pod,暴露 REST API,通过 grpc 客户端使用内部服务 grpc API
- 内部服务1个pod,暴露grpc API
问题 - 当我使用某些 grpc 客户端(例如 BloomRPC)通过端口转发调用内部服务 grpc API 时,延迟在 1 秒(平均 300 毫秒)内非常好,但是当我使用 grpc 客户端(用 scala 编写)使用相同的 grpc API 时,它总是平均 > 2 秒。我知道由于 TPC 连接处理,第一次调用需要时间,但即使在 JVM 预热之后也总是需要 2-4 秒。我只在服务启动时创建一次 grpc 通道(在主方法中,异步存根)并重复使用相同的通道,没有启用客户端 grpc 负载平衡。如何改善延迟?
scala - 如何解决在 Windows10 的 scala 项目中编译 protobuf 的问题?
我在 scala 上有带有示例 protobuf 的简单代码
原型文件
项目文件夹中的 plugins.sbt
构建.sbt
在 sbt shell 调用命令编译时出现错误
什么是错误???我使用的是 Windows10 和 jdk 1.8,然后是 jdk 11。
scala - 如何仅为包含验证规则的消息生成验证器文件?
如何仅为包含验证规则的消息生成验证器文件?
在下面的示例中,实际上 sbt 编译生成 4 个 scala 类:一个用于 protobufA,一个用于 protobufB,一个用于两者的验证器消息。
我只想生成三个类:一个用于 protobufA,一个用于 protobufB,最后一个用于 protobufA 验证器类。
我有scalapb-validate-codegen 0.1.3 版。