问题标签 [eager]

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.

0 投票
1 回答
845 浏览

list - 当我们已经有列表时,为什么 Haskell 需要 Data.Sequence?

List 是 Haskell 的默认数据类型,为什么还需要 Data.Sequence?Data.Seq 是否意味着可以随机访问的 C 样式数组?

如果是,我想这意味着 Data.Sequence 存储在固定的内存缓冲区中,因此是急切的评估类型。只是一个猜测,你会帮助纠正吗?谢谢。

0 投票
0 回答
42 浏览

haskell - Haskell 的“变量”热切评估了吗?

我将值“x”定义为 2

  1. Haskell 是否使用了“变量”的概念?在像 Haskell 这样的 FP 中,一切都是函数,但“x”是函数吗?
  2. 如果“let x=2”只是一个名称绑定,没有评估,然后“x”命令显示“2”,那么它已经被评估了对吗?为什么 ":sprint x" 仍然打印 "_"?
0 投票
1 回答
1065 浏览

jsf - org.omnifaces.cdi.eager.EagerBeansWebListener.requestInitialized 处的 java.lang.NullPointerException

我正在使用 TomEE Plus 1.7.2 服务器并尝试启动一个包含 OmniFaces 的 web 应用程序,但我得到一个 Nullpointer 异常:

警告:无法为请求/index.xhtml 实例化急切请求范围的 bean。可能 CDI 请求范围未激活。如果确实如此,请参阅 org.omnifaces.cdi.Eager 上的 JavaDoc,了解如何解决此问题。

java.lang.NullPointerException at org.omnifaces.cdi.eager.EagerBeansWebListener.requestInitialized(EagerBeansWebListener.java:78)

当我使用 OmniFaces 文档中所示的EagerBeansFilter时,我得到了一些细微的变化:

警告:无法实例化急切的应用程序范围 bean。可能 CDI 应用程序范围未激活。众所周知,在某些基于 Tomcat 和 Jetty 的配置中就是这种情况。

org.omnifaces.cdi.eager.EagerBeansRepository.instantiateApplicationScopedAndRegisterListener 的 java.lang.NullPointerException(EagerBeansRepository.java:69)

这台服务器不能与omnifaces结合吗?

0 投票
1 回答
73 浏览

hibernate - 使用 Joins 进行 Eager fetching

请有人帮助我理解 Hibernate 中的“使用连接进行 Eager fetching”的概念,其中包含一个简单的示例查询和描述查询结果的表。我已经搜索了网络,但无法通过一个很好的例子得到解释。请帮助和指导我。

0 投票
0 回答
43 浏览

partitioning - 分区问题

为我的 SQL Server 数据库寻找横向扩展选项。
我有一个有 1500 万行的表,它每天增加 10,000 行。从可用于横向扩展的各种选项中,我选择了分区,因为只需在数据库中进行更改,并且应用程序代码将保持不变。表 I m 分区是 BOOKING 表,它具有以下列:-
1) Bookingid
2) Ordered
3) Userid
4) Starttime
5) Endtime
等等

我决定每年对这个表进行分区,所以我选择 Starttime 列作为我的分区键。首先,我创建了 BOOKING 表的副本作为 BOOKING_Partition,将 Booking 表的所有数据导入 Booking_Partition 表。

分区遵循的步骤:-
1) 创建文件组
2) 将文件附加到文件组
3) 创建分区函数
4) 创建分区方案
6 )在分区方案
7 上使用 Starttime(分区键)和 Bookingid(我使用组合)创建集群索引) 最后我通过运行查询来检查分区是否成功。是的,我的表已成功分区。

现在我想检查我现有的查询是否有任何性能变化我检查了最常用的查询,是否在应用程序加载时获取 40 天的数据

从 Booking_Partition 选择 Bookingid、OrderId、UserId,其中 Starttime >= GETDATE()-20 AND St​​arttime < GETDATE()+20

以上只是一个示例,在生产中,此查询具有连接以从其他表中获取数据。
当我在分区表和非分区表分析器上运行此查询时,显示的持续时间几乎相同,性能没有差异。

选择查询执行计划的图像:- 选择查询执行计划的图像

上面的计划是针对分区表的,它显示击中分区,但正如我所说,分析器显示分区表和非分区表的持续时间没有变化。另外我不明白为什么它要访问 4 个分区来获取 40 天的数据。

现在,当我执行 UPDATE 或 DELETE 时,我的主要担忧就出现了。
当我在分区表上更新或删除时,它会在执行计划中显示急切的假脱机。

显示急切假脱机的更新查询执行计划的图像:- 显示急切假脱机的更新查询执行计划的图像

我不明白为什么只有当我在分区表上更新或删除时它才在做急切的假脱机,当我在非分区表上运行相同的查询时它不做急切的假脱机。

0 投票
1 回答
1235 浏览

php - Laravel 一对多关系

在尝试使用多态关系让其他东西工作之后,似乎再也找不到我做错了什么。我有两个表设置:

付款:

存款:

我的模型关系:

支付:

订金:

现在我在每个表中都有一个记录用于测试目的。我试图在显示存款时急于加载付款:

例如:

这不会返回与其关联的付款,只是返回null关系。在我的表中,payment_id 为 1,就像付款表中的 id 一样。据我回忆,这应该可行。我错过了什么?

编辑,getQueryLog 返回:

在此处输入图像描述

0 投票
1 回答
263 浏览

java - ActiveJDBC 预加载多态父节点

我无法急切地加载子类的多态父类。include 语句似乎没有任何区别。

儿童班:

家长班:

应该急切返回子+父的查询:

最终,我试图加快以下操作:

我已经对这些操作进行了基准测试,无论是否在 Child.where() 方法上使用 .include(ParentRequest.class) ,上述操作似乎都需要大约 67 毫秒。

非常感谢任何见解或帮助。

注意:我知道孩子只有一个父母。在不久的将来,它将有几个。

编辑: 由于某些原因,反转查询产生了更快的结果。也就是说,如果我搜索 ParentRequest 并包含 Child,则操作会快得多,而不是查找 Children 并包含 ParentRequest。请注意,我专门做了一个 findBySql 来将结果中的子表连接到 parent_request 表。下面我留下了查询的细节。

0 投票
2 回答
128 浏览

php - 按预先加载的关系计数排序

我有这样的东西

在我的控制器中,我像这样加载这个项目

我需要得到喜欢计数并用这个数字分页来排序这个列表,就像这样

,这显然是行不通的。有小费吗 ?谢谢。

0 投票
2 回答
379 浏览

ruby - 使用 with_sql 时,Sequel 可以急切加载关系吗?

我试图通过 Sequel gem 的eager方法急切加载关系数据,同时使用with_sql定义用于查询的 sql(这是一个相当复杂的查询)。急切的加载根本不起作用。相反,它为返回的每一行的每个关系生成一个查询,这是我试图避免的。这是一些代码:

问题是当我调用 Foo.bar 时,rel1 和 rel2 的急切加载似乎被忽略了。我通过查看日志验证了这一点——对于with_sql调用返回的每一行,它会生成另外 2 个查询——一个用于 rel1,一个用于 rel2。

可能值得注意的是它sql包含 3 个连接。

这是使用with_sql. 有没有办法绕过这个限制?

0 投票
2 回答
602 浏览

php - 在 Laravel 中自动生成参数的热切加载

我有这个路由调用:

因此,如果我输入/products/438/edit它会调用控制器上的编辑方法,就像这样:

$product正确的,我的在哪里SELECT * FROM products WHERE id = 438

现在我的问题是,如果我想急切加载诸如价格()之类的关系怎么办

我试过了:

但没有成功。谢谢